Quando utilizzo il carattere nullo '\u0000'
, il costruttore di stringhe interromperà l'aggiunta di nuovi elementi.Perché il costruttore di stringhe smette di aggiungere elementi dopo aver usato il carattere null?
Ad esempio:
StringBuilder _stringBuilder = new StringBuilder();
_stringBuilder.append('\u0000');
_stringBuilder.append('a');
System.out.println("."+_stringBuilder+".");
rendimenti
.
ho capito che il valore null non deve essere stampato (o stampato come se fosse un valore String null), ma in questo caso, perché a stringbuilder non riescono ad aggiungere più elementi?
Nota: sto usando jdk 1.6.0_38 su ubuntu.
'\ 0' - terminatore null, utilizzato come fine della stringa nelle stringhe C e C++ – user1516873
Dubito che 'StringBuilder' abbia interrotto l'aggiunta di nuovi elementi. Questo è più probabilmente un problema nel mostrare la 'stringa' risultante. Qual è il 'length()' di 'StringBuilder' dopo aver aggiunto alcuni elementi? –
Ho eseguito il tuo codice esatto in eclissi su jdk 1.6.0_25 su Win 7 e stampa '. a ... potrebbe essere una cosa specifica della shell. – FGreg