Java小白常问的问题大全
Java小白在初学Java时都会遇到各种各样的问题,小编来总结一下一些常见的问题。比如,可以用%除以一个小数吗?a+=b和a=a+b的效果有区别吗?声明一个数组为什么需要花费大量时间?为什么Java库不用随机pivot方式的快速排序? 如果有想学习java的同学,可来我们的java技术学习QQ群的哦:745446493里面免费送整套系统的java教程! 基本数据类型 1.我可以用%除以一个小数吗? 当然可以。比如,如果angle是一个非负数,那么angle%(2*Math.PI)就会把angle转换到0到2π之间。 2.当ab都是基本类型变量时,a+=b和a=a+b的效果有区别吗? 当a和b的类型不同时,那两条语句的效果就可能有区别。a+=b等同于a=(int)(a+b),这种情况下可以是a是int型,b是float型。但是同等情况下a=a+b就会编译报错。 3.为什么-0/3结果是0,而-0.0 /3.0结果是-0.0?(注意后边的结果0带负号) 在Java里,整数是用补码表示的。在补码中0只有一种表示方法。另一方面,浮点数则是用IEEE标准表示的,对于0有两种表示方法,0和-0。 条件语句和循环语句 1.为什么判断字符串相等不能使用==? 这反映了基础类型(int,double,boolean)和引用类型(String)的区别。 2.有没有在什么情况下