2011-08-07 18 views
13

कुछ ऐसा जो मैंने सोचा था, इतना आसान नहीं था।जावा लंबे समय तक बाइनरी

मुझे एक लंबी संख्या को बाइनरी में परिवर्तित करने की आवश्यकता है।

उदाहरण के लिए:

String b = Integer.toBinaryString(1028); 

उत्पादन 10000000100

है लेकिन जब मैं Integer.toBinaryString (2199023255552) का उपयोग करें; यह काम नहीं करता। निस्संदेह इस समारोह के लिए संख्या बहुत बड़ी है और मुझे वह नहीं मिल रहा है जो लंबे समय से परिवर्तित हो।

कोई सुझाव?

धन्यवाद।

उत्तर

35

एक L इसकी एक लंबी < 1 इंगित करने के लिए जोड़ें> और Long class < 2> का उपयोग करें: जावा में

Long.toBinaryString(2199023255552L); 

< 1> स्थिरांक निर्दिष्ट न किए int रों माना जाता है।

< 2>Integer.toBinaryString() पैरामीटर के रूप में एक int प्राप्त करता है, लंबे समय तक नहीं।

+0

क्या आपने उल्लेख किया 'एल'' जोड़ा था? इस कोड का परीक्षण किया गया था ... – MByD

+0

बहुत बहुत धन्यवाद। क्षमा करें, मैंने पहले एल को नहीं देखा। अजीब तरह का लेकिन ठीक है .... – Steve

+0

+1 आपको बस "अच्छा जवाब" बैज मिलता है :) –

संबंधित मुद्दे