Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Indexof()-Metoden | Sträng Avancerad
Java Fördjupad
course content

Kursinnehåll

Java Fördjupad

Java Fördjupad

1. Djupgående Java-struktur
2. Metoder
3. Sträng Avancerad
4. Klasser
5. Klasser Avancerat

book
Indexof()-Metoden

Hur hittar du indexet för ett angivet tecken i en String?

För att hitta indexet för den första förekomsten av en specifik bokstav tillhandahåller klassen String metoden indexOf(). Denna metod är överlagrad och har flera implementationer. Låt oss förstå vad var och en av dem gör:

indexOf(String str)

indexOf(String str) – i denna metod anger parametern vad vi söker efter. Det kan vara en enskild bokstav inom dubbla citattecken (""), en sekvens av bokstäver eller till och med ett ord. Denna metod returnerar indexet för den första förekomsten av den angivna parametern i strängen. Till exempel, låt oss hitta indexet för bokstaven "l" i strängen "Hello":

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the first appearance of the letter "l" int index = hello.indexOf("l"); // output the index of the first occurrence of "l" System.out.println("First appearance of the letter 'l' is on index " + index); } }

I exemplet ovan initierade vi variabeln index med hjälp av metoden indexOf("l"). Nu innehåller denna variabel indexet för den första förekomsten av bokstaven "l" i strängen "Hello".

indexOf(String str, int fromIndex)

indexOf(String str, int fromIndex) – den första parametern är densamma som tidigare och anger vad vi söker efter. Den andra parametern bestämmer startindexet från vilket vi börjar sökningen. Till exempel, i ordet "Hello" finns det 2 förekomster av bokstaven "l", och vi vill hitta indexet för den andra förekomsten. Från det första exemplet vet vi att den första förekomsten är på index 2, så låt oss sätta parametern fromIndex till 3 och hitta indexet för det andra "l":

Main.java

Main.java

copy
123456789101112131415
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the first appearance of the letter "l" int firstIndex = hello.indexOf("l"); // find the index of the second appearance of the letter "l", starting from the position after the first "l" int secondIndex = hello.indexOf("l", firstIndex + 1); // output the index of the second occurrence of "l" System.out.println("Second appearance of the letter 'l' is on index " + secondIndex); } }

I exemplet ovan använde vi en mer praktisk metod. Vi använde positionen för den första förekomsten av den angivna bokstaven för att söka efter den andra bokstaven med start från index ökat med 1. På detta sätt påbörjas sökningen från nästa index efter indexet för den första förekomsten av den önskade bokstaven eller teckenkombinationen.

Dessutom kan parametrarna String str och int fromIndex bytas ut mot varandra.

Det är också värt att notera att om metoden indexOf() inte hittar den angivna bokstaven eller teckenkombinationen, returneras värdet -1. Till exempel:

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the letter "d" in the string int index = hello.indexOf("d"); // output the index, if the specified letter is not found, the value will be -1 System.out.println("Value of index, if it does not find a specified letter: " + index); } }

Sökningen efter bokstaven "d" i strängen "Hello" gav inget resultat, och metoden returnerade -1. Detta kan vara användbart för att ange villkor eller skapa en utgångspunkt från en loop.

Hur man hittar det sista indexet i strängen

String har också en metod som möjliggör sökning från slutet av strängen. Denna metod kallas lastIndexOf(). Den fungerar enligt samma princip. Låt oss titta på ett exempel där vi hittar den sista förekomsten av bokstaven "l" i strängen "Hello":

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the last index of the letter "l" int lastIndex = hello.lastIndexOf("l"); // output the last index where the letter "l" appears System.out.println("Last index of the letter 'l' : " + lastIndex); } }

Här fick vi resultatet 3, vilket representerar indexet för den sista förekomsten av bokstaven "l".

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 4

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

course content

Kursinnehåll

Java Fördjupad

Java Fördjupad

1. Djupgående Java-struktur
2. Metoder
3. Sträng Avancerad
4. Klasser
5. Klasser Avancerat

book
Indexof()-Metoden

Hur hittar du indexet för ett angivet tecken i en String?

För att hitta indexet för den första förekomsten av en specifik bokstav tillhandahåller klassen String metoden indexOf(). Denna metod är överlagrad och har flera implementationer. Låt oss förstå vad var och en av dem gör:

indexOf(String str)

indexOf(String str) – i denna metod anger parametern vad vi söker efter. Det kan vara en enskild bokstav inom dubbla citattecken (""), en sekvens av bokstäver eller till och med ett ord. Denna metod returnerar indexet för den första förekomsten av den angivna parametern i strängen. Till exempel, låt oss hitta indexet för bokstaven "l" i strängen "Hello":

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the first appearance of the letter "l" int index = hello.indexOf("l"); // output the index of the first occurrence of "l" System.out.println("First appearance of the letter 'l' is on index " + index); } }

I exemplet ovan initierade vi variabeln index med hjälp av metoden indexOf("l"). Nu innehåller denna variabel indexet för den första förekomsten av bokstaven "l" i strängen "Hello".

indexOf(String str, int fromIndex)

indexOf(String str, int fromIndex) – den första parametern är densamma som tidigare och anger vad vi söker efter. Den andra parametern bestämmer startindexet från vilket vi börjar sökningen. Till exempel, i ordet "Hello" finns det 2 förekomster av bokstaven "l", och vi vill hitta indexet för den andra förekomsten. Från det första exemplet vet vi att den första förekomsten är på index 2, så låt oss sätta parametern fromIndex till 3 och hitta indexet för det andra "l":

Main.java

Main.java

copy
123456789101112131415
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the first appearance of the letter "l" int firstIndex = hello.indexOf("l"); // find the index of the second appearance of the letter "l", starting from the position after the first "l" int secondIndex = hello.indexOf("l", firstIndex + 1); // output the index of the second occurrence of "l" System.out.println("Second appearance of the letter 'l' is on index " + secondIndex); } }

I exemplet ovan använde vi en mer praktisk metod. Vi använde positionen för den första förekomsten av den angivna bokstaven för att söka efter den andra bokstaven med start från index ökat med 1. På detta sätt påbörjas sökningen från nästa index efter indexet för den första förekomsten av den önskade bokstaven eller teckenkombinationen.

Dessutom kan parametrarna String str och int fromIndex bytas ut mot varandra.

Det är också värt att notera att om metoden indexOf() inte hittar den angivna bokstaven eller teckenkombinationen, returneras värdet -1. Till exempel:

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the index of the letter "d" in the string int index = hello.indexOf("d"); // output the index, if the specified letter is not found, the value will be -1 System.out.println("Value of index, if it does not find a specified letter: " + index); } }

Sökningen efter bokstaven "d" i strängen "Hello" gav inget resultat, och metoden returnerade -1. Detta kan vara användbart för att ange villkor eller skapa en utgångspunkt från en loop.

Hur man hittar det sista indexet i strängen

String har också en metod som möjliggör sökning från slutet av strängen. Denna metod kallas lastIndexOf(). Den fungerar enligt samma princip. Låt oss titta på ett exempel där vi hittar den sista förekomsten av bokstaven "l" i strängen "Hello":

Main.java

Main.java

copy
12345678910111213
package com.example; // do not modify the code below this comment public class Main { public static void main(String[] args) { String hello = "Hello"; // find the last index of the letter "l" int lastIndex = hello.lastIndexOf("l"); // output the last index where the letter "l" appears System.out.println("Last index of the letter 'l' : " + lastIndex); } }

Här fick vi resultatet 3, vilket representerar indexet för den sista förekomsten av bokstaven "l".

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 4
some-alt