Strengmanipulationsoperationer i Java
Stryg for at vise menuen
I virkelige programmer er strenge ikke statiske — de bliver konstant kombineret, søgt, ryddet op og transformeret. Dette kaldes strengmanipulation: anvendelse af operationer for at ændre, inspicere eller udtrække information fra tekst.
Strengkonkatenering
Den simpleste operation er konkatenering — sammenkædning af strenge ved hjælp af +-operatoren:
Main.java
1234567891011package com.example; public class Main { public static void main(String[] args) { String customerName = "Ann"; String welcomeMessage = "Welcome " + customerName; System.out.println(welcomeMessage); // Welcome Ann } }
Alle andre strengoperationer er baseret på metoder — indbyggede handlinger, som Java stiller til rådighed. I stedet for at skrive logikken fra bunden, kalder vi disse metoder og lader Java udføre operationen. Tænk på dem som færdiglavede værktøjer, der anvendes direkte på en streng.
length()
Hvis du har brug for at vide, hvor mange tegn en streng indeholder — inklusive mellemrum — anvendes metoden .length(). Den returnerer en int.
Main.java
12345678910111213package com.example; public class Main { public static void main(String[] args) { String customerName = "Ann"; String welcomeMessage = "Welcome " + customerName; int messageLength = welcomeMessage.length(); System.out.println(messageLength); } }
"Welcome Ann" har 11 tegn inklusive mellemrum, så messageLength gemmer 11, og det er det, der bliver udskrevet.
toUpperCase()
Hvis du har brug for at konvertere alle tegn i en streng til store bogstaver — for eksempel på kvitteringer eller etiketter — brug .toUpperCase(). Den returnerer en ny String.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerName = "anna"; String upperCaseName = customerName.toUpperCase(); System.out.println(upperCaseName); } }
.toUpperCase() ændrer ikke den oprindelige customerName — den opretter en ny String med alle bogstaver med store bogstaver, så "anna" bliver til "ANNA".
toLowerCase()
Hvis du har brug for alle tegn med små bogstaver — nyttigt for konsistens eller sammenligningslogik — brug .toLowerCase(). Den returnerer en ny String.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String lowerCaseOrder = order.toLowerCase(); System.out.println(lowerCaseOrder); } }
En ny String oprettes, hvor hvert tegn konverteres til små bogstaver, så outputtet er "large latte with oat milk".
contains()
Hvis du skal kontrollere, om en streng indeholder et bestemt ord eller tekststykke, bruges .contains(). Den returnerer en boolean.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; boolean containsLatte = order.contains("Latte"); System.out.println(containsLatte); } }
.contains() gennemgår hele strengen og kontrollerer, om "Latte" forekommer et hvilket som helst sted i den. Da det gør, er resultatet true.
isEmpty()
Hvis du skal kontrollere, om en streng overhovedet indeholder noget indhold, bruges .isEmpty(). Den returnerer true, hvis strengen ikke indeholder nogen tegn, og false ellers.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerNote = ""; boolean emptyNote = customerNote.isEmpty(); System.out.println(emptyNote); } }
customerNote er en tom streng uden tegn, så .isEmpty() returnerer true.
replace()
Hvis du skal udskifte en del af en streng uden at omskrive hele strengen, bruges .replace(). Den finder et specifikt tekststykke og erstatter det med noget nyt. Den returnerer en ny String.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String updatedMessage = order.replace("Latte", "coffee with milk"); System.out.println(updatedMessage); } }
.replace() finder alle forekomster af "Latte" i order og erstatter dem med "coffee with milk", hvilket giver "Large coffee with milk with oat milk".
charAt() og indeksering
Hvis du har brug for at få adgang til et enkelt tegn på en bestemt position i en streng, bruges .charAt(). Den returnerer en char.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerName = "Daniel"; char firstLetter = customerName.charAt(0); System.out.println(firstLetter); } }
.charAt(0) tilgår position 0, hvilket er det første tegn 'D', og gemmer det i char-variablen firstLetter.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat