Java类型转换异常中比较常见的错误

Stringtest="123";intnumber=Integer.parseInt(test);String转化为Integer,可以如下所示。

也适用于int转化为Integer:

Stringtest="123";//Stringtest="abc";//会报错:NumberFormatException:ForinputstringIntegernumber=Integer.valueOf(test);注意:不管是使用Integer.parseInt(),还是使用Integer.valueOf()将字符串转换成数字,

如果是非数字的字符串,会报错:NumberFormatException:Forinputstring:""

另外,Integer类取值和int类型取值一致,取值范围是从-2147483648至2147483647(-231至231-1),包括-2147483648和2147483647。

如果超过了这个范围,也会报错。比如Integer.valueOf("2147483648"),超过了Integer范围。因此会报错:Forinputstring:"2147483648"

更安全的做法是,使用apache包的NumberUtils,如下:

注意:NumberUtils只处理整数,不能用来处理小数。

Stringstr="abc";//str不为数字时,设置默认值为0intnum=NumberUtils.toInt(str);//str不为数字时,设置默认值为其他值,比如1intdefaultNum=NumberUtils.toInt(str,1);String转BigDecimal:

Stringstr1="2.30";BigDecimalbd=newBigDecimal(str1);String转double:

doublevalue=NumberUtils.toDouble("4.23");Double转化为int:

Doubletest=newDouble("1.23");//Double初始化,最好用String保证精度intresult=test.intValue();其他类型转String:

//Objectobj="123";Stringtest=String.valueOf(obj);注意:当String.valueOf()的参数obj为null时,返回值是字符串"null"!!而不是null。

如果希望obj为null时,返回"",可以使用apache-commons-lang的包,如下所示:

Objectobject=null;Stringstr=ObjectUtils.toString(object);//object为null时,结果为""如果希望obj为null时,返回null,如下:

ObjectUtils.toString(object,nullStr),第二参数nullStr表示,当object为null时,方法返回的值。

//Objectobj=null;Objectobject="123";Stringstr=ObjectUtils.toString(object,null);//相当于Stringstr=(object==null)null:object.toString();Integer转double:

使用doubleValue()方法,或者(double)强制转换。

Integera=newInteger(5);intintvalue=a.intValue();doubledoublevalue=a.doubleValue();其他类型转Double:

Doublerate=Double.valueOf(obj);比较小数是否相等。

比较Double是否相等。比较BigDecimal是否相等。

如下所示:

doublevalue=1.23;if(BigDecimal.ZERO.compareTo(BigDecimal.valueOf(value))==0){//}比较Double类型的大小:

if(Double.valueOf(d1).compareTo(Double.valueOf(d2))<0){//...}比较double类型的大小:

除了用BigDemical的compare()方法,可以直接用Double.doubleToLongBits()的结果值用==,>,

学Java可以从事什么工作,职业发展无限可能!

软件培训班学费多少?让我们来一探究竟!

软件开发培训机构如何选择,去哪里学习更好?

人工智能培训机构哪个好?

学编程的学费一般是多少费用?

学Java六个月感觉啥也不会?不要担心,让我来帮助你!

0基础0学费15天面授

有基础直达就业

工作1~3年,加薪神器

工作3~5年,晋升架构

初级202925

初级203221

初级202629

初级203743

答:零基础学Java不要盲目,可以先尝试自己适不适合...查看回答

THE END
1.Java中bigdecimal转integer的方法是什么问答在Java中,可以使用intValue()方法将BigDecimal转换为Integer。示例代码如下: BigDecimal bigDecimal = new BigDecimal("10.5"); Integer integerValue = bigDecimal.intValue(); System.out.println("Integer Value: " + integerValue); 复制代码 请注意,使用intValue()方法将BigDecimal转换为Integer时,小数部分将被...https://www.yisu.com/ask/16562518.html
2.long类型转为integerpostgre sql 字符串转为integer类型 select cast(setting_value as integer) from ud_organization_setting. select cast('123123' as integer) from ud_organization_setting. 判断BigDecimal是否可以转为Integer或Double 一句话,BigDecimal转为字符串,匹配正则表达式,so easy; 不废话,代码: import java.math.BigDecimal...https://www.shuzhiduo.com/topic/long%E7%B1%BB%E5%9E%8B%E8%BD%AC%E4%B8%BAinteger/
3.自己平时长期积累的java资料可供大家学习注:Double, Float, Long 转成字串的方法大同小异。 4、如何将整数int转化为Integer Integer integer=new Integer(i) 5、如何将Integer转化为字符串String Integer integer=String() 6、如何将Integer转化为int int num=Integer.intValue() 7、如何将String转化为BigDecimal ...https://www.360doc.cn/article/77399670_1000420378.html
1....中大整数BigInteger和高精度浮点数BigDecimal的基本应用和注意事...BigInteger和BigDecimal类中都实现了基本的四则运算、模运算等(计算的时候要调用对应的方法,不能对对象直接用运算符号),返回值是运算结果(仍然是相应类型的对象,不是在原对象上直接操作的)。 BigIntegerbigInteger=BigInteger.ZERO;BigIntegersum1=bigInteger.add(BigInteger.ONE);BigIntegerdiff1=bigInteger.subtract(BigInteg...https://blog.csdn.net/2401_88859777/article/details/143664804
2.BigDecimal.DivideToIntegralValue方法(Java.Math)Microsoft...BigDecimal 的this / divisor整數部分。 屬性 RegisterAttribute 例外狀況 NullPointerException 如果 為 ,則為divisor == null。 ArithmeticException 如果 為 ,則為divisor == 0。 備註 的java.math.BigDecimal.divideToIntegralValue(java.math.BigDecimal)Java 檔。 https://docs.microsoft.com/zh-hk/dotnet/api/java.math.bigdecimal.dividetointegralvalue
3.javalong默认四舍五入吗kekenai的技术博客今日博主使用BigDecimal的时候,由于idea自动设置了项目jdk版本为jdk11,突然发现下述方式提示了过时 price.setScale (2,BigDecimal.ROUND_CEILING); 1. 因为以前学习时,一直使用的jdk1.8,且百度都是上面的方式,便查看了一下源码 二、分析 从jdk11的源码上看,该方法应该是在jdk9的时候,进行了过时处理 ...https://blog.51cto.com/u_13259/12493951
4.JavaBigDecimal转IntegerJava BigDecimal转Integer /** * Map里的数据,如果值为BigDecimal类型,转为Integer * @param maps * @return */publicstaticMapmapBigDecimalToInteger(Map maps){if(maps==null){returnmaps;}if(maps.isEmpty()){returnmaps;}for(Object key:maps.keySet()){Object value=maps.get(key);if(value instance...https://www.jianshu.com/p/3399a86e9640
5.Java实现intlongIntegerLong之间的相互转换javaBigDecimal numBigDecimal = new BigDecimal(numberInt); // 或 numBigDecimal = BigDecimal.valueOf(numberInt); long numberlong = numBigDecimal.longValue();二、Long <-> Integer1. Long转化为Integer(1)使用Long的api1 2 Long numberLong = new Long(1000L); Integer intNumber = numberLong.intValue();...https://www.jb51.net/program/295725gfg.htm
6.BigDecimal转换时行为不一致·Issue#IBY26·wenshao/...期待BigDecimal正转反转类型不变, 其他类型保持现有特性 可接受对所有的BigDecimal类型,序列化时默认输出至少一位小数, 与Integer区别开, 对其他类型保持不变 publicclassCustomerBigDecimalCodecextendsBigDecimalCodec{privatestatic DecimalFormatformat;publicCustomerBigDecimalCodec(){format= new DecimalFormat();format.setMini...https://gitee.com/wenshao/fastjson/issues/14
7.Java中BigDecimal比较大小的方法BigDecimal转换为Integer有时候数据库数据为BigDecimal,而我们需要的是Integer类型,则要将数据进行转换,以 变量num为例 》先将BigDecimal转换为String类型 String str=num.toString(); 》再将String类型转换为Integer类型 Integer integer=Integer.parseInt(str); 以上同适用于Object类型数据文章标签: Java 数据库 关键词: Java方法 Java BigD...https://developer.aliyun.com/article/1470483
8.Java中BigDecimal比较大小的方法BigDecimal转换为Integerif(sysPartner.getCurrentAdvanceMoney().compareTo(newBigDecimal("0.00"))==0 ) { msg="此用户当前预付款为0"; } 有时候数据库数据为BigDecimal,而我们需要的是Integer类型,则要将数据进行转换,以 变量num为例 》先将BigDecimal转换为String类型 String str=num.toString(); ...http://yjs.liiix.com/?article/1470483
9.BigDecimal转为int类型「建议收藏」腾讯云开发者社区BigDecimal转为int类型「建议收藏」 直接调用BigDecimal的intValue()方法 示例: BigDecimal a = new BigDecimal(“1.1”); int b = a.intValue(); BigDecimal运算方法: 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有...https://cloud.tencent.com/developer/article/2167357
10.将BigDecimal转成字符串为科学计数法的踩坑记录目录BigDecimal转字符串为科学计数法踩坑场景解决案例演示BigDecimal变科学计数法 BigDecimal转字符串为科学计数法踩坑 场景 在开发工程中,在金额方面都会定义bigdecimal类型,当然有时候也需要将金额转成字符串。我们可能会很自然的写成 金额.toString()方法如: https://www.apispace.com/news/post/15351.html