Non esiste una tale costante, e per buoni motivi, IMO.
Perché utilizzare una costante al primo posto nell'esempio?
String musician = "Lisa" + Character.SPACE + "Coleman" ;
è meno leggibile
String musician = "Lisa Coleman";
o addirittura di
String musician = "Lisa" + ' ' + "Coleman";
Quindi credo che non è per ragioni di leggibilità.
Immagino quindi che tu voglia una costante per evitare di ripetere te stesso in diverse porzioni di codice. Tuttavia, l'utilizzo di Character.SPACE
anziché di ' '
ovunque non porta a meno ripetizioni. Solo per codice più prolisso e meno leggibile.
Immagino quindi che tu voglia essere in grado di cambiare il valore costante in un posto, e farlo cambiare ovunque sia usato. Tuttavia, l'utilizzo di una costante integrata Character.SPACE
non consente di raggiungere tale obiettivo. Si sarebbe ancora necessario il proprio costante, e il suo nome non dovrebbe essere quello che è il valore, ma ciò che il valore è per:
private static final char FIRST_NAME_LAST_NAME_SEPARATOR = ' ';
Ora, c'è una buona ragione per usare quella costante: se si più tardi decidi di usare una tab invece di uno spazio, puoi cambiare il valore della costante e ricompilare tutto il tuo codice.
fonte
2015-10-17 06:40:08
Penso che questa sarà exaplain: http://stackoverflow.com/a/21437830/460557 –
Qualcuno ha fatto questo: http://blog.code-cop.org/2007/08/java-unicode-constants.html Non sei sicuro di quanto sia utile avere ** ogni ** carattere Unicode chiamato così. Ti suggerisco di nominare solo alcuni * speciali * di cui hai bisogno (e no, lo spazio non è speciale). – Andreas