Strings
Um String Java é imutável — uma vez criado, nunca pode ser mudado. Concatenar com + não modifica o string original; ele constrói e retorna um completamente novo, e .length() relata a contagem de caracteres de um string.
public class Main {
public static void main(String[] args) {
String first = "Hello";
String second = "World";
String combined = first + ", " + second + "!";
System.out.println(combined);
System.out.println("length = " + combined.length());
}
}Hello, World! length = 13
== versus .equals()
== compara referências de objects — se duas variáveis apontam para exatamente o mesmo object na memória — enquanto .equals() compara o conteúdo real. Dois objects String criados separadamente com new String(...) têm texto igual mas são objects diferentes, por isso == pode retornar false mesmo quando os strings parecem idênticos; comparar strings quase sempre significa recorrer a .equals().
public class Main {
public static void main(String[] args) {
String a = new String("java");
String b = new String("java");
System.out.println(a == b);
System.out.println(a.equals(b));
}
}false true
A seguir: classes e objects — definir uma class, fields, constructors, e criar instances.
Practice exercise
Dado String s = "rust lang", use substring para extrair apenas "rust" (os primeiros 4 caracteres), depois imprima-o.