黑马程序员技术交流社区
标题:
String构造函数将byte数组转换成字符串的问题
[打印本页]
作者:
Matrix_heima
时间:
2015-7-16 12:22
标题:
String构造函数将byte数组转换成字符串的问题
public class StringDemo {
public static void main(String[] args){
// 通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String。
byte[] b = new byte[1];
for(byte i=-128; i<=127; i++){
b[0] = i;
String str = new String(b);
System.out.print(str);
// 不加判断语句,就会无限循环
if(i==127)
break;
}
}
}
复制代码
本来想看下从-128到127都转换成什么字符,结果就开始无限循环(不加判断语句),是不是因为循环到128时,强制转换成byte类型,进而导致无限循环。
作者:
紫夜灵魂
时间:
2015-7-16 13:21
因为循环里是byte 类型 取值范围就是-128-127,你的循环判断条件是<=127
无论怎么i++ i的值都在-128-127之间 所以无限循环了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2