• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Dlaczego ta linijka wypisuje 2 a nie -1??? metoda LastIndexOf() java

VPS Starter Arubacloud
0 głosów
107 wizyt
pytanie zadane 4 sierpnia w Java przez Wojo772233 Początkujący (480 p.)

Witam. Myślałem że lastIndexOf() przechodzi przez napis kolejno od indeksów: 2,1,0 i nie znajdzie kolejno litery o oraz j. A więc czemu program wypisuje 2 a nie -1????

String napis = "wojowazaxxljo";

        System.out.println("xd.lastindexOf(\"jo\", 2): " + xd.lastIndexOf("jo", 2));

 

1 odpowiedź

0 głosów
odpowiedź 4 sierpnia przez adrian17 Ekspert (349,240 p.)
Bo na indeksie 2 zacyzna się substring "jo". Przekazując ("jo", 2) poprosiłeś żeby zaczął szukać zaczynając od 2 więc znajduje w pozycji 2. Gdybyś przekazał ("jo", 1) to by nie znalazł.
komentarz 4 sierpnia przez Wojo772233 Początkujący (480 p.)
Wyjaśnij krok po kroku bo nie rozumiem
komentarz 4 sierpnia przez adrian17 Ekspert (349,240 p.)

No, dokładnie jak napisałeś

Myślałem że lastIndexOf() przechodzi przez napis kolejno od indeksów: 2,1,0 

Wiec lastIndexOf sprawdza na początek indeks 2. Czy w stringu "wojowazaxxljo", na indeksie 2 zaczyna się tekst "jo"? Tak - więc zwraca 2.

komentarz 4 sierpnia przez Wojo772233 Początkujący (480 p.)

Przecież przechodzi włącznie od indeksu fromIndex do 0 włącznie a na indeksie 2 jest j a nie o

komentarz 4 sierpnia przez adrian17 Ekspert (349,240 p.)

On szuka indeksu gdzie zaczyna się string. Argument `2` nie oznacza "udawaj że ten string kończy się na znaku 2 (więc `woj`)", oznacza "zaczynaj szukanie początku stringu od znaku 2", więc sprawdza "jo", potem "oj", potem "wo".

Podobne pytania

0 głosów
2 odpowiedzi 110 wizyt
pytanie zadane 23 marca 2017 w C i C++ przez Aleksander Początkujący (360 p.)
0 głosów
0 odpowiedzi 89 wizyt
pytanie zadane 27 grudnia 2021 w Systemy operacyjne, programy przez Niepokonana7999 Bywalec (2,310 p.)
0 głosów
1 odpowiedź 12,169 wizyt
pytanie zadane 22 marca 2020 w C i C++ przez Elmejs Nowicjusz (190 p.)

92,979 zapytań

141,943 odpowiedzi

321,189 komentarzy

62,308 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...