metodi:

length:
var.length()
upper/lower case:
var.toLowercase()
var.toUppercase()

si ottiene una nuova stringa minuscola o maiuscola (la stringa originale non viene modificata).

indexing:

è possibile ottenere il k-esimo carattere di una stringa

char c = var.charAt(k);
slicing:
String s = var.substring(startIndex, endIndex);
  • startIndex incluso, endIndex escluso
concatenazione:
  • due metodi: + e concat
String s3 = s1+s2;
String s4 = s1.concat(s2);
  • se si devono concatenare molte stringhe, si può usare la classe StringBuilder, con metodi append(String s) e insert(int posizione, String s)
StringBuilder sb = new StringBuilder();
sb.append(s1).append(s2);
String s5 = sb.toString();
cercare:

si può cercare la prima posizione di un carattere o di una sottostringa con indexOf

int k = "happy happy birthday".indexOf('a');
//ritorna 1
int j = "din din don don".indexOf("don");
//ritorna 8

attenzione!

se il carattere/la stringa non è presente, ritornerà -1

anche Java implementa i metodi startsWith e endsWith.

var.startsWith("hel")

si può vedere se una stringa contiene una sottostringa con il metodo contains()

String myStr = "Hello";
System.out.println(myStr.contains("Hel"));
sostituire:

Java implementa il metodo replace , che sostituisce tutte le occorrenze di un carattere o di una stringa.

var.replace(torepl, replwith);
 
String s1 = "uno_due_tre".replace('_', ' ');
//ritorna "uno due tre"
confrontare:

le stringhe (e tutti gli altri oggetti) vanno sempre confrontate con il metodo equals.

  • l’operatore == confronta il riferimento (memoria) quindi dà True solo se si confrontano gli stessi oggetti.
  • l’operatore equals confronta la stringa carattere per carattere e restituisce True se le stringhe contengono la stessa sequenza di caratteri
split:

il metodo split prende in input un’espressione regolare s e restituisce un array di sottostringhe separate da s.

String[] parole = "uno due tre".split(" ");
//parole contiene {"uno", "due", "tre"}