请教一下这句话什么意思 bbits += (b.get(j) ? "1" : "0"); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一个个看(b.get(j) ? "1" : "0")三目运算符,b.get(j)为true时是1,false为0,然后bbits = bbits + 这个结果。 这个是三元运算, bbits += (b.get(j) ? "1" : "0");b.get(j)返回的值为ture或者false,当返回的是ture则为bbits=bbits+1,false则为bbits=bbits+0。 import java.util.*;public class Bits { public static void main(String[] args) { Random rand = new Random(); // Take the LSB of nextInt(): byte bt = (byte)rand.nextInt(); BitSet bb = new BitSet(); for(int i = 7; i >=0; i--) if(((1 << i) & bt) != 0) bb.set(i); else bb.clear(i); System.out.println("byte value: " + bt); printBitSet(bb); short st = (short)rand.nextInt(); BitSet bs = new BitSet(); for(int i = 15; i >=0; i--) if(((1 << i) & st) != 0) bs.set(i); else bs.clear(i); System.out.println("short value: " + st); printBitSet(bs); int it = rand.nextInt(); BitSet bi = new BitSet(); for(int i = 31; i >=0; i--) if(((1 << i) & it) != 0) bi.set(i); else bi.clear(i); System.out.println("int value: " + it); printBitSet(bi); // Test bitsets >= 64 bits: BitSet b127 = new BitSet(); b127.set(127); System.out.println("set bit 127: " + b127); BitSet b255 = new BitSet(65); b255.set(255); System.out.println("set bit 255: " + b255); BitSet b1023 = new BitSet(512);// Without the following, an exception is thrown// in the Java 1.0 implementation of BitSet:// b1023.set(1023); b1023.set(1024); System.out.println("set bit 1023: " + b1023); } static void printBitSet(BitSet b) { System.out.println("bits: " + b); String bbits = new String(); for(int j = 0; j < b.size() ; j++) bbits += (b.get(j) ? "1" : "0"); System.out.println("bit pattern: " + bbits); }} bbits += (b.get(j) ? "1" : "0");这句怎么理解 b.get(j) ? "1" : "0" 这是一个三目运算符 b.get(j)这个方法的返回值一定是一个布尔值即true or false,如果返回true则表达式 b.get(j) ? "1" : "0" 返回?号后面的 也就是字符串"1" 反之则返回字符串"0"。bbits 应该是个字符串类型的变量使用 += 运算符将返回的"1"或"0"合并到bbits 并重新赋值给bbits 加入背景图的问题 用过XmlEncoder的高手进来看看 初学者求助(分】 有没有 类似windows vista 主题的 LookAndFeel 开源包??? 不会要这么麻烦吧,只是比较一下是不是0? APPLET能否使用他的源服务器上的JNDI。如果不能,他怎么使用数据库 我用Socket类写了一个服务器的接收端,请问怎么可以获得本机的IP? 类库的存放目录? ☆各位大虾,小弟想了解 MVC 编程模式,请问有什么资料可查?☆ Java中 byte Java Eclipse 的使用请教 dispose问题和Container如何释放资源
public static void main(String[] args) {
Random rand = new Random();
// Take the LSB of nextInt():
byte bt = (byte)rand.nextInt();
BitSet bb = new BitSet();
for(int i = 7; i >=0; i--)
if(((1 << i) & bt) != 0)
bb.set(i);
else
bb.clear(i);
System.out.println("byte value: " + bt);
printBitSet(bb); short st = (short)rand.nextInt();
BitSet bs = new BitSet();
for(int i = 15; i >=0; i--)
if(((1 << i) & st) != 0)
bs.set(i);
else
bs.clear(i);
System.out.println("short value: " + st);
printBitSet(bs); int it = rand.nextInt();
BitSet bi = new BitSet();
for(int i = 31; i >=0; i--)
if(((1 << i) & it) != 0)
bi.set(i);
else
bi.clear(i);
System.out.println("int value: " + it);
printBitSet(bi); // Test bitsets >= 64 bits:
BitSet b127 = new BitSet();
b127.set(127);
System.out.println("set bit 127: " + b127);
BitSet b255 = new BitSet(65);
b255.set(255);
System.out.println("set bit 255: " + b255);
BitSet b1023 = new BitSet(512);
// Without the following, an exception is thrown
// in the Java 1.0 implementation of BitSet:
// b1023.set(1023);
b1023.set(1024);
System.out.println("set bit 1023: " + b1023);
}
static void printBitSet(BitSet b) {
System.out.println("bits: " + b);
String bbits = new String();
for(int j = 0; j < b.size() ; j++)
bbits += (b.get(j) ? "1" : "0");
System.out.println("bit pattern: " + bbits);
}
}
bbits += (b.get(j) ? "1" : "0");这句怎么理解