Strenge er sekvenser af karakterer. For eksempel "Hej!" er en streng, fordi den består af tegnene 'H', 'e', 'l', 'l', 'o' og '!'. I Java er strenge objekter, hvilket betyder, at der er en strengklasse, der har felter og metoder. Vi kan bruge metoderne i strengklassen til at manipulere strenge.
Trin
Metode 1 af 5: Opret en streng
Trin 1. Opret en streng ved hjælp af konstruktøren af String -klassen
String str = new String ("Hej!");
Trin 2. Opret en streng ved direkte at tildele en streng
Trin 3. Prøv et eksempel
Her er et prøveprogram, der opretter en streng på to forskellige måder.
public class StringManipulation {public static void main (String args) {String str1 = new String ("String oprettet med en konstruktør!"); String str2 = "String oprettet uden en konstruktør!"; System.out.println (str1); System.out.println (str2); }}
Metode 2 af 5: Find længden af en streng
Trin 1. Forstå, hvad det vil sige at finde længden af en streng
Længden af en streng er antallet af tegn, som strengen indeholder. For eksempel længden af strengen "Hej!" er 6, fordi den har 6 tegn.
Trin 2. Påkald
længde ()
metode på String -objektet, og gem resultatet i en heltalsvariabel.
int strLength = str.length ();
Trin 3. Prøv det
Her er et prøveprogram, der finder længden af en streng.
public class StringManipulation {public static void main (String args) {String str = "Hej!"; int strLength = str.length (); System.out.println ("Længden af \" " + str +" / "er" + strLength + "."); }}
Metode 3 af 5: Vend en streng om
Trin 1. Forstå, hvad det vil sige at vende en streng
At vende en streng betyder at ændre rækkefølgen af tegnene i en streng. For eksempel omvendt af strengen "Hej!" er "! olleH". Der er mange måder at vende en streng i Java.
Trin 2. Brug den omvendte metode i StringBuffer -klassen
Opret et StringBuffer -objekt, der optager den streng, du vil reversere som parameter. Brug metoden StringBuffers reverse (), og hent derefter den nyligt omvendte streng ved hjælp af toString () -metoden.
public class StringManipulation {public static void main (String args) {String str = "Hej!"; StringBuffer buffer = ny StringBuffer (str); String reversedStr = buffer.reverse (). ToString (); System.out.println ("Omvendt af strengen \" " + str +" / "er \" " + reversedStr +" / "."); }}
Trin 3. Iterere gennem tegnene i en streng omvendt, ved at tilføje disse tegn til en StringBuffer ved hver iteration
Opret et nyt StringBuffer -objekt initialiseret med længden af den streng, som du ønsker at vende om som parameter. Brug derefter en for loop til at gentage gennem strengen, startende fra det sidste tegn i strengen og slutter ved det første tegn i strengen. Ved hver iteration tilføjes karakteren ved dette indeks til StringBuffer. Hent den nyligt omvendte streng ved at bruge metoden toString ().
public class StringManipulation {public static void main (String args) {String str = "Hej!"; StringBuffer buffer = ny StringBuffer (str.length ()); for (int i = str.length ()-1; i> = 0; i--) {buffer.append (str.charAt (i)); } String reversedStr = buffer.toString (); System.out.println ("Omvendt af strengen \" " + str +" / "er \" " + reversedStr +" / "."); }}
Trin 4. Skriv en rekursiv funktion for at vende strengen
I den rekursive funktion er grundtilfældet / betingelsen, hvis strengen er nul, eller hvis strengens længde er mindre end eller lig med ingen. Ellers kaldes den omvendte () metode igen med strengen minus det første tegn, og det første tegn bliver slået til i slutningen. Så hvis vi passerede i strengen "Hej!", Vil det første reverse () opkald efter det have parameteren "ello!".
public class StringManipulation {public static void main (String args) {String str = "Hej!"; String reversedStr = reverse (str); System.out.println ("Omvendt af strengen \" " + str +" / "er \" " + reversedStr +" / "."); } privat statisk String reverse (String str) {if (str == null || str.length () <= 1) return str; returner omvendt (str.substring (1)) + str.charAt (0); }}
Trin 5. Konverter strengen til en række tegn, og skift derefter den første og sidste, anden og anden til sidste osv
tegn. Konverter først strengen til en række tegn ved hjælp af metoden toCharArray () på strengen. Få indekset for det sidste tegn i arrayet, som er lig med arrayets længde minus et. Derefter gentages gennem arrayet og bytter ith tegn og indexOfLastChar - ith karakter ved hver iteration. Til sidst skal du konvertere karaktermatrix tilbage til en streng.
public class StringManipulation {public static void main (String args) {String str = "Hej!"; char charArray = str.toCharArray (); int indexOfLastChar = charArray.length - 1; for (int i = 0; i <charArray.length/2; i ++) {char temp = charArray ; charArray = charArray [indexOfLastChar - i]; charArray [indexOfLastChar - i] = temp; } String reversedStr = ny streng (charArray); System.out.println ("Omvendt af strengen \" " + str +" / "er \" " + reversedStr +" / "."); }}
Trin 6. Gennemgå dit output
Her er output, der er resultatet af en af disse metoder til strengomvendelse.
Metode 4 af 5: Beskær hvidt mellemrum i en streng
Trin 1. Forstå, hvad det vil sige at trimme hvidt mellemrum i en snor
Trimning af en streng i Java betyder at fjerne det førende og efterfølgende hvide rum i strengen. For eksempel, hvis du har strengen"
Hej Verden!
"og du vil have det til at sige" Hej verden! "uden det hvide mellemrum i begyndelsen og i slutningen kan du trimme strengen. Strengklassen giver en metode til at trimme (), som returnerer en kopi af strengen med ledende og bageste hvidt mellemrum fjernet, eller den originale streng, hvis den ikke har noget ledende eller efterfølgende hvidt mellemrum.
Trin 2. Brug trim () -metoden for strengklassen på et strengobjekt til at trimme det hvide mellemrum
Bemærk, at trim () -metoden kaster en undtagelse, hvis strengen er null. Metoden trim () ændrer ikke indholdet i den originale streng, fordi strenge i Java er uforanderlige, hvilket betyder, at en strengs tilstand ikke kan ændres, efter at den er oprettet. Trim () -metoden vil snarere returnere en ny streng, der har sit mellemrum afskåret.
Streng trimmetStr = str.trim ();
Trin 3. Prøv et eksempel
Her er et prøveprogram, der beskærer det hvide mellemrum i en streng:
public class StringManipulation {public static void main (String args) {String str = "Hej!"; Streng trimmetStr = str.trim (); System.out.println ("Original streng er \" " + str +" / "."); System.out.println ("Trimmet streng er \" " + trimmedStr +" / "."); }}
Metode 5 af 5: Opdel en streng
Trin 1. Forstå, hvad det vil sige at dele en streng
Opdeling af en streng i Java betyder at opdele en streng med en bestemt afgrænser i en række substrings. For eksempel, hvis jeg opdelte strengen "rød, blå, grøn, gul, pink" med et komma som afgrænsning, ville jeg få arrayet "" rød "," blå "," grøn "," gul "," lyserød "}. Her er tre forskellige måder at dele en streng på.
Trin 2. Brug
StringTokenizer
for at symbolisere strengen.
Importere
java.util. StringTokenizer
. Opret derefter en ny forekomst af en
StringTokenizer
med strengen til tokenisering og afgrænsningen som parametre. Hvis du ikke angiver afgrænsningen som en parameter, vil afgrænseren automatisk angive hvidt mellemrum som standard. Når du har
StringTokenizer
du kan bruge
nextToken ()
metode til at få hvert token.
import java.util. Arrays; import java.util. StringTokenizer; public class StringManipulation {public static void main (String args) {String str = "rød, grøn, blå, gul, pink"; StringTokenizer tokenizer = ny StringTokenizer (str, ","); int numberOfTokens = tokenizer.countTokens (); String splitArr = ny streng [numberOfTokens]; for (int i = 0; i <numberOfTokens; i ++) {splitArr = tokenizer.nextToken (); } System.out.println ("\ nOriginal streng:" + str); System.out.println ("Split Array:" + Arrays.toString (splitArr) + "\ n"); }}
Før Java 1.4,
StringTokenizer
klasse blev brugt til at dele strenge i Java. Men nu, brugen af
StringTokenizer
frarådes og brugen af
dele()
metode i
Snor
klasse eller brugen af
java.util.regex
Trin 3. Brug
Snor
klasse
dele()
metode.
Det
dele()
metode vil tage skilletegn som parametre og returnere en række sub-strenge, der er de samme som tokens fra
StringTokenizer
import java.util. Arrays; public class StringManipulation {public static void main (String args) {String str = "rød, grøn, blå, gul, pink"; String splitArr = str.split (","); System.out.println ("\ nOriginal streng:" + str); System.out.println ("Split Array:" + Arrays.toString (splitArr) + "\ n"); }}
Trin 4. Brug regulære udtryk til at dele strengen
Importere
java.util.regex. Pattern
. Brug
udarbejde()
metode til
Mønster
klasse for at indstille afgrænseren og derefter give
dele()
metode den streng, du vil dele. Det
Mønster
vil returnere en vifte af underlag.
import java.util. Arrays; import java.util.regex. Pattern; public class StringManipulation {public static void main (String args) {String str = "rød, grøn, blå, gul, pink"; String splitArr = Pattern.compile (",").split (str); System.out.println ("\ nOriginal streng:" + str); System.out.println ("Split Array:" + Arrays.toString (splitArr) + "\ n"); }}
Trin 5. Gennemgå dit output
Her er output, der er resultatet af en af disse metoder til opdeling af strenge.