①包装类
1、其中需要注意int对应的是Integer,char对应的Character,其他6个都是基本类型首字母大写即可。
2、字符串转成基本类型:包装类.parseInt(str);
3、基本数值转成字符串有3种方式:
(1)、基本类型直接与” ”相连接即可;34+""
(2)、调用包装类中的toString方法;Integer.toString(34);
(3)、调用String的valueOf方法;String.valueOf(34);
4、基本数值---->包装对象
(1)、Integer ii = new Integer(“4”);//构造函数中可以传递一个数字字符串
(2)、Integer iiii = Integer.valueOf(“4”);//使用包装类中的valueOf方法
包装对象---->基本数值
int num = ii .intValue();
5、自动装箱与拆箱
基本类型可以使用运算符直接进行计算,但是引用类型不可以。而包装类作为引用类型的一种却可以计算,原因在于,Java”偷偷地”自动地进行了对象向基本数据类型的转换;基本类型的值赋值给一个包装类的引用,原因同样在于Java又”偷偷地”自动地进行了基本数据类型向对象的转换。
l 自动拆箱:对象转成基本数值
l 自动装箱:基本数值转成对象
②System类
System类不能手动创建对象,因为构造方法被private修饰了,阻止外界创建对象。System类中的都是static方法,类名访问即可。
l currentTimeMillis() 获取当前系统时间与1970年01月01日00:00点之间的毫秒差值
l exit(int status) 用来结束正在运行的Java程序。参数传入一个数字即可。通常传入0记为正常状态,其他为异常状态。
l arraycopy方法,用来实现将源数组部分元素复制到目标数组的指定位置
l 将src数组中前3个元素,复制到dest数组的前3个位置上
System.arraycopy( src, 0, dest, 0, 3);
③Math类
类似这样的工具类,其所有方法均为静态方法,并且一般不会创建对象。如System类。
abs:绝对值、ceil:比参数值大的最小整数的double值,Math.ceil(3.3); //值为 4.0、floor:比参数值小的最大整数的double值,Math.floor(3.3); //值为3.0、pow:第一个参数的第二个参数次幂的值,Math.pow(2.0, 3.0); //值为 8.0、random:产生一个大于等于0.0且小于1.0的double小数,Math.random();
④Arrays类
空指针就是该位置数据为空;
数组下标越界就是操作的下标不存在;
Arrays.sort( arr );对指定数组中的元素进行排序(元素值从小到大进行排序);
String str = Arrays.toString(arr);返回指定数组元素内容的字符串形式;
Arrays.binarySearch(arr, 4); //值为2。查找给定元素值出现的位置。若没有查询到,返回位置为-1。要求该数组必须是个有序的数组。
⑤大数据运算
在Java的世界中,超过long型的整数已经不能被称为整数了,它们被封装成BigInteger对象.在BigInteger类中,实现四则运算都是通过方法来实现,并不是采用运算符。
BigInteger:加add、减subtract、乘multiply、除divide
double和float类型在运算中很容易丢失精度,造成数据的不准确,BigDecimal类可以实现浮点数据的高精度运算。
对于浮点数据的除法运算,和整数不同,可能出现无限不循环小数,因此需要对所需要的位数进行保留和选择舍入模式:
千克转成吨:
weight.divide(new BigDecimal(1000),3,RoundingMode.HALF_UP);
// 累加重量,保留10位有效数字
stoweightMap.put(“11”, divisor.divide(dividend, 10, BigDecimal.ROUND_HALF_UP).add(dividend));
ROUND_HALF_UP: 遇到.5的情况时往上近似,例: 1.5 ->;2
ROUND_HALF_DOWN : 遇到.5的情况时往下近似,例: 1.5 ->;1
BigDecimal a = new BigDecimal(1.5);
System.out.println(“down=”+a.setScale(0,BigDecimal.ROUND_HALF_DOWN)+"/tup="+a.setScale(0,BigDecimal.ROUND_HALF_UP));
结果:down=1 up=2
看这个例子就明白了!
其他参数说明:https://blog.csdn.net/daryl715/article/details/1604174/