आपने एक वर्ण शाब्दिक निर्दिष्ट किया है, जिसे एकल उद्धरणों द्वारा सीमांकित किया गया है, उदाहरण के लिए 'a'
(एक स्ट्रिंग शाब्दिक से अलग है, जो "a"
एक int
चर के लिए दोहरे उद्धरण द्वारा उदासीन है, जैसे ) । जावा 16-बिट char
से 32-बिट पर हस्ताक्षर किए गए से एक स्वचालित चौड़ीकरण करता है int
।
हालाँकि, जब कोई वर्ण शाब्दिक बैकस्लैश होता है, जिसके बाद 1-3 अंक होते हैं, तो यह वर्ण का एक अष्टक ( आधार / मूलांक 8) होता है। इस प्रकार:
\15
= 1 × 8 + 5 = 13 (एक गाड़ी वापसी; उसी तरह '\r'
)
\25
= 2 × 8 + 5 = 21 (एनएके चार - नकारात्मक स्वीकृति)
\100
= 1 × 64 + 0 × 8 + 0 = 64 (@ प्रतीक; वही '@'
)
चरित्र शाब्दिक और अनुक्रम से बचने के बारे में अधिक जानकारी के लिए, JLS अनुभाग देखें:
3.10.6 से BNF का हवाला देते हुए :
OctalEscape:
\ OctalDigit
\ OctalDigit OctalDigit
\ ZeroToThree OctalDigit OctalDigit
OctalDigit: one of
0 1 2 3 4 5 6 7
ZeroToThree: one of
0 1 2 3