String.startsWith în Java

Verifică dacă șirul începe (startsWith) sau se termină (endsWith) cu textul dat.

Sintaxă
boolean startsWith(String prefix)
boolean startsWith(String prefix, int deLa)
boolean endsWith(String sufix)

Ce face String.startsWith

startsWith(p) returnează true dacă șirul începe exact cu p; endsWith(s) dacă se termină cu s. Comparația ține cont de literele mari și mici. Orice șir începe și se termină cu șirul gol.

Varianta startsWith(p, deLa) verifică dacă p apare exact la poziția deLa.

Parametri

Parametru Descriere
prefix / sufix Textul căutat la început sau la sfârșit.
deLa Poziția de la care se verifică prefixul.

Ce returnează

true sau false.

Exemple

Exemplul 1: Tipul unui fișier și prefixul unui telefon

public class Main {
    public static void main(String[] args) {
        String[] fisiere = {"poza.jpg", "notite.TXT", "raport.pdf", "vacanta.JPG"};
        for (String f : fisiere) {
            boolean imagine = f.toLowerCase().endsWith(".jpg");
            System.out.println(f + " imagine: " + imagine);
        }
        String tel = "+40722123456";
        System.out.println("număr din România: " + tel.startsWith("+40"));
        System.out.println("rețea 72 după prefix: " + tel.startsWith("72", 4));
    }
}

Rezultat

poza.jpg imagine: true
notite.TXT imagine: false
raport.pdf imagine: false
vacanta.JPG imagine: true
număr din România: true
rețea 72 după prefix: false

Exemplul 2: Comenzi dintr-un mic interpretor

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextLine()) {
            String linie = in.nextLine();
            if (linie.startsWith("/salut ")) {
                System.out.println("Bună, " + linie.substring(7) + "!");
            } else if (linie.startsWith("/")) {
                System.out.println("Comandă: " + linie.substring(1));
            } else {
                System.out.println("Text: " + linie);
            }
        }
    }
}

Ce scrie utilizatorul (intrare)

/ajutor
/salut Ana
mesaj obișnuit

Rezultat

Comandă: ajutor
Bună, Ana!
Text: mesaj obișnuit

Greșeli frecvente

  • Verifici extensia cu endsWith(".jpg") și ratezi fișierele .JPG. Transformă numele în litere mici înainte.
  • Verifici endsWith("pdf") fără punct: și "rapdf" trece testul. Include punctul: ".pdf".

Comenzi înrudite

  • String.contains: Verifică dacă textul dat apare oriunde în șir; comparația ține cont de literele mari și mici.
  • String.indexOf: Returnează poziția primei (indexOf) sau ultimei (lastIndexOf) apariții a unui text sau caracter, ori -1.
  • String.regionMatches: Compară o porțiune din șir cu o porțiune din alt șir, opțional fără să țină cont de literele mari și mici.
  • String.toUpperCase: Returnează un șir nou cu toate literele transformate în majuscule (toUpperCase) sau minuscule (toLowerCase).