在学习JAVA中碰到几个问题,希望JAVA高手帮忙解决下,先谢谢了!!
问题一:随即生成a~z之间的字符代码:(char)('a'+Math.random()*('z'-'a'+1)’)为什么要加1呢?这里不是很明白问题二:Math.roun...
问题一:随即生成a~z之间的字符代码:(char)('a'+Math.random()*('z'-'a'+1)’)为什么要加1呢?这里不是很明白
问题二:Math.round(3.4f)的意思不是把3.4加上0.5取值最接近的整数吗?为啥运行后是3而不是4呢?
问题三:
public static void main(String[] args){
Boolean b2 =new Boolean("ok")
System.out.println(b2.booleanValue());
}这个运行完是错误的,返回false,不应该是ture么?这个“ok”不是String变量吗?在String变量不为null且忽略大小写时等于ture的啊!!为啥返回值是false呢?
问题四:s+=b[i]是不是等于s=s+b[i]?
求大神帮忙解决这四个问题,谢谢了,新手见谅,刚开始学! 展开
问题二:Math.round(3.4f)的意思不是把3.4加上0.5取值最接近的整数吗?为啥运行后是3而不是4呢?
问题三:
public static void main(String[] args){
Boolean b2 =new Boolean("ok")
System.out.println(b2.booleanValue());
}这个运行完是错误的,返回false,不应该是ture么?这个“ok”不是String变量吗?在String变量不为null且忽略大小写时等于ture的啊!!为啥返回值是false呢?
问题四:s+=b[i]是不是等于s=s+b[i]?
求大神帮忙解决这四个问题,谢谢了,新手见谅,刚开始学! 展开
1个回答
展开全部
问题一:Math.random()*10,产生的是0到9,要想产生0到10的数,就应该Math.random()*11,在 你的代码中,z-a等于25,Math.random()*25,产生的是0到24,所以应该加上1;
问题二:Math.round(-11.5)的结果为-11.Math.round( )符合这样的规律:小数点后大于5全部加, 等于5正数加,小于5全不加。也就是常说的四舍五入;
问题三:new Boolean("true")会产生true,其他字符串都会赋值false;
问题四:你的理解是对的。
问题二:Math.round(-11.5)的结果为-11.Math.round( )符合这样的规律:小数点后大于5全部加, 等于5正数加,小于5全不加。也就是常说的四舍五入;
问题三:new Boolean("true")会产生true,其他字符串都会赋值false;
问题四:你的理解是对的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询