यदि आप एक पूर्णांक से परिवर्तित हो रहे हैं जो बाइनरी जैसा दिखता है तो @agilesteel सुझाव देता है तो आपको सावधान रहना होगा। उदाहरण के लिए 0101.b
65 दशमलव को बाइनरी (प्रारंभिक 0 संकेतक ऑक्टल) में परिवर्तित करने का प्रयास करेगा, जबकि 101.b
101 दशमलव को बाइनरी में परिवर्तित करने का प्रयास करेगा। यह केवल स्ट्रिंग से कनवर्ट करने का प्रयास करने के लिए वास्तव में समझ में आता है, जिसके लिए Integer.parseInt
है, और एक संख्या से द्विआधारी स्ट्रिंग प्रस्तुति के लिए, जिसके लिए Integer.toString(x, 2)
है।
मैं प्रोग्रामेटिक बाइनरी साहित्य के लिए बहुत से उपयोग-मामलों के बारे में नहीं सोच सकता। उस ने कहा, उनके पास made it to Java 7 उपसर्ग 0b
के साथ एक संख्या के रूप में है, इसलिए मुझे आश्चर्य होगा कि अगर वे जल्द ही स्कैला में नहीं दिखाई देते थे। ऐसा लगता है कि जावा ने 15 साल तक उनके बिना ठीक किया है।
implicit class IntToBase(val digits:String) extends AnyVal {
def base(b:Int) = Integer.parseInt(digits, b)
def b = base(2)
def o = base(8)
def x = base(16)
}
आप काम करने के लिए अनुमति देता है कि:
स्रोत
2011-08-26 00:21:20
ध्यान दें कि 2.10 के रूप में, एक प्रमुख 0 का उपयोग ऑक्टल का मतलब बहिष्कृत किया गया है। – AmigoNico