JavaRush /Java Blog /Random-IT /Riferimento Java. Stringhe statiche
articles
Livello 15

Riferimento Java. Stringhe statiche

Pubblicato nel gruppo Random-IT
Le stringhe in Java sono descritte dalla classe String e sono statiche, cioè In una riga esistente non è possibile modificare i caratteri e il loro numero. Oltre alla creazione standard da parte dell'operatore new, le stringhe possono essere create direttamente da una stringa letterale. Allo stesso tempo, per scopi di ottimizzazione, gli oggetti creati in questo modo vengono inoltre archiviati in un'area separata: lo String Pool. String s1 = "d" // строка будет сохранена в пуле // строка не будет сохранена в пуле // будет уничтожена сборщиком мусора String s2 = new String("a"); Uno dei vantaggi di separare le stringhe in statiche e dinamiche è che aumenta la sicurezza quando le stringhe vengono utilizzate come argomenti (ad esempio, apertura di database, connessioni Internet, meccanismi di caricamento delle classi).

operazione +

L'operazione + è disponibile per le stringhe e consente di combinare più stringhe in una sola. Se uno degli operandi non è una stringa, viene automaticamente convertito in una stringa. Per gli oggetti viene utilizzato a questo scopo il metodo toString. Ogni operazione utilizza internamente un oggetto dinamico StringBuilder o StringBuffer. Pertanto, per assemblare una stringa da più stringhe, è comunque ottimale utilizzare uno StringBuilder/StringBuffer alla volta.

selezione della sottostringa

C'è una nota sul metodo sottostringa: la stringa restituita utilizza lo stesso array di byte di quello originale. Ad esempio, hai scaricato la riga A da un file da 1 MB. Hanno trovato qualcosa lì e lo hanno separato in una riga separata B, lunga 3 caratteri. Anche la linea B in realtà occupa lo stesso 1MB. String s ="very .... long string from file"; // совместно использует ту же память что и s String sub1 = s.substring(2,4); // этот an object использует отдельный массив на 4 символа String sub2 = new String(s.substring(2,4));

metodi di base

  • compareTo (String anotherString) - confronto lessigrafico di stringhe;
  • compareToIgnoreCase (String str) - confronto lessigrafico di stringhe senza distinzione tra maiuscole e minuscole;
  • regioneMatches (boolean ignoreCase, int toffset, String other, int ooffset, int len) - verifica l'identità delle regioni delle stringhe, è possibile specificare la distinzione tra maiuscole e minuscole;
  • regioneMatches (int toffset, String other, int ooffset, int len) - verifica l'identità delle regioni delle stringhe;
  • concat (String str) - restituisce la concatenazione di due stringhe;
  • contiene (CharSequence s) - controlla se la sequenza di caratteri specificata è inclusa nella stringa;
  • terminaCon (suffisso String) - controlla se la stringa termina con il suffisso specificato;
  • iniziaCon (Prefisso stringa) - controlla se la stringa inizia con il prefisso specificato;
  • opensWith (String prefix, int toffset) - controlla se la stringa nella posizione specificata inizia con il prefisso specificato;
  • equals (Object anObject) - controlla se la stringa è identica all'oggetto specificato;
  • getBytes () - restituisce la rappresentazione in byte della stringa;
  • getChars (int srcBegin, int srcEnd, char[] dst, int dstBegin) - restituisce una rappresentazione in caratteri di una sezione di una stringa;
  • hashCode () - codice hash della stringa;
  • indexOf (int ch) - cerca la prima occorrenza di un carattere in una stringa;
  • indexOf (int ch, int fromIndex) - cerca la prima occorrenza di un carattere in una stringa dalla posizione specificata;
  • indexOf (String str) - cerca la prima occorrenza della sottostringa specificata;
  • indexOf (String str, int fromIndex) - cerca la prima occorrenza della sottostringa specificata dalla posizione specificata;
  • lastIndexOf (int ch) - cerca l'ultima occorrenza di un simbolo;
  • lastIndexOf (int ch, int fromIndex) - cerca l'ultima occorrenza di un carattere dalla posizione specificata;
  • lastIndexOf (String str) - cerca l'ultima occorrenza di una stringa;
  • lastIndexOf (String str, int fromIndex) - cerca l'ultima occorrenza di una stringa dalla posizione specificata;
  • replace (char oldChar, char newChar) - sostituisce un carattere in una stringa con un altro;
  • sostituisci (destinazione CharSequence, sostituzione CharSequence) - sostituisce una sottostringa con un'altra;
  • substring (int BeginIndex, int endIndex) - restituisce la sottostringa come stringa;
  • toLowerCase () - converte una stringa in minuscolo;
  • toLowerCase (locale locale): converte una stringa in minuscolo utilizzando la locale specificata;
  • toUpperCase() - converte la stringa in maiuscolo;
  • toUpperCase (locale locale): converte una stringa in maiuscolo utilizzando la locale specificata;
  • trim() - taglia i caratteri vuoti alle estremità della stringa;
  • valueOf(a) - metodi statici per convertire vari tipi in una stringa.
I metodi di ricerca restituiscono l'indice dell'occorrenza oppure -1 se l'elemento cercato non viene trovato. I metodi di conversione come replace non modificano la stringa stessa ma restituiscono un nuovo oggetto stringa corrispondente. metodi con espressioni regolari Le stringhe hanno anche una serie di metodi che utilizzano espressioni regolari :
  • corrisponde (String regex) - se la stringa corrisponde all'espressione regolare specificata;
  • replaceAll (String regex, String rplс) - sostituisce tutte le occorrenze di stringhe che soddisfano l'espressione regolare con la stringa specificata;
  • replaceFirst (String regex, String rplс) - sostituisce la prima occorrenza di una stringa che corrisponde all'espressione regolare con la stringa specificata;
  • split (String regex) - divide una stringa in parti, i limiti della divisione sono occorrenze di stringhe che soddisfano l'espressione regolare;
  • split (String regex, int limit) - simile al precedente, ma con la limitazione di applicare l'espressione regolare alla stringa al valore limite. Se limite>0, la dimensione dell'array di stringhe restituito non supererà il limite. Se limit<=0, l'espressione regolare viene applicata alla stringa un numero illimitato di volte.
Link alla fonte originale: http://darkraha.com/rus/java/lang/string/static_string.php
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION