क्या कोई यह बता सकता है कि जावा कोड के इन दो टुकड़े अलग-अलग व्यवहार क्यों कर रहे हैं? सबसे पहले सही ढंग से बिट्स की संख्या की गणना करता है लेकिन दूसरा एक गैर-शून्य संख्याओं के लिए केवल 1 या 0 प्रदर्शित करता है। मुझे समझ में नहीं आता कि क्या हो रहा है।जावा में बिटवाई और ऑपरेटर और + का प्रयोग असंगत परिणाम देकर
public static void printNumUnitBits(int n){
int num=0;
for(int i=0;i<32;i++){
int x=n&1;
num=num+x;
n=n>>>1;
}
System.out.println("Number of one bits:"+num);
}
public static void printNumUnitBits(int n){
int num=0;
for(int i=0;i<32;i++){
num=num+n&1;
n=n>>>1;
}
System.out.println("Number of one bits:"+num);
}
ओह..मैं अब समझता हूं। महान! बहुत के लिए धन्यवाद :) – Shimano