System.out.println("\1");
ho pensato che non ha compilato perché la sequenza non riconosciuto fuga.Cosa rappresenta " 1" in questa stringa Java?
Che cosa esattamente "\1"
rappresentano?
System.out.println("\1");
ho pensato che non ha compilato perché la sequenza non riconosciuto fuga.Cosa rappresenta " 1" in questa stringa Java?
Che cosa esattamente "\1"
rappresentano?
E 'una sequenza di escape ottale, come elencato nella section 3.10.6 della JLS. Così, per esempio:
String x = "\16";
è equivalente a:
String x = "\u000E";
(come ottale 16 = Hex E.)
Così \1
noi U + 0001, il "inizio della voce" carattere.
Octal sequenze di escape vengono raramente utilizzati in Java nella mia esperienza, e io personalmente li evitano, se possibile. Quando voglio specificare un carattere usando una sequenza numerica di escape, io uso sempre \uxxxx
.
in Java Essa segue valore
\u0001
Java è una di quelle lingue che ti fanno giurare copiosamente quando si colpisce gli insetti "accessorio" che ha. Sapevi che Java interpreta gli escape di caratteri come caratteri * letterali * nel codice sorgente? Bene, questo non è un problema finché non provi a sfuggire al ritorno a capo ... quindi Java pensa che hai bloccato una nuova riga nel codice sorgente quando non ne volevi uno. –
@PP .: Dipende da quale escape di carattere intendi. Ad esempio, un commento di '// This \ n is okay 'va bene, ma' // This \ u000a is not' non verrà compilato. –
La seconda riga di codice non viene compilata (almeno sulla mia macchina): * "string letteral non è chiuso correttamente con una virgola doppia" *. – sp00m