intValue()
1.intValue()是java.lang.Number类的方法,Number是一个抽象类。Java中所有的数值类都继承它。也就是说,不单是Integer有intValue方法,Double,Long等都有此方法。
2.此方法的意思是:输出int数据。每个数值类中具体的实现是不同的。例如:
Float类和Double类的intValue方法,就是丢掉了小数位,而Long的intValue方法又不一样的
Double s = 2.5;
Float k = 2.7f;
double kk = 2.9;
Double double1 = new Double(2.9);
System.out.println(k.intValue());
System.out.println(s.intValue());
输出结果:
2
2
valueOf()
String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 ,也就是 String.valueOf() 这个参数多载的方法
有以下几种
(1)String.valueOf(boolean b) : 将 boolean 变量 b 转换成字符串
(2)String.valueOf(char c) : 将 char 变量 c 转换成字符串
(3)String.valueOf(char[] data) : 将 char 数组 data 转换成字符串
(4)String.valueOf(char[] data, int offset, int count) : 将 char 数组 data 中 由 data[offset] 开始取 count 个元素 转换成字符串
(5)String.valueOf(double d) : 将 double 变量 d 转换成字符串
(6)String.valueOf(float f) : 将 float 变量 f 转换成字符串
(7)String.valueOf(int i) : 将 int 变量 i 转换成字符串
Double s = 2.5;
System.out.println(s.valueOf(2.5f));
System.out.println(s.valueOf("2"));
输出结果:
2.5
2.0
Float k = 2.7f;
System.out.println(k.valueOf(2.9f));
System.out.println(k.valueOf("2.533435"));
System.out.println(k.valueOf((float) 2.5d));
输出结果:
2.9
2.533435
2.5
Integer aa = 9;
System.out.println(aa.valueOf("23.0"));
输出结果:
报错Exception in thread "main" java.lang.NumberFormatException: For input string: "23.0"
原因:因为"23.0" 默认是double类型的,而aa类型是int。又因为"23.0"是字符串,无法强制转换
只能是
System.out.println(aa.valueOf((int)23.0));强转类型必须和aa一致
————————————————
https://blog.csdn.net/weixin_41585557/article/details/83753958
https://www.cnblogs.com/jpfss/p/10255836