java字符串转数字及各种数字转字符串的3种方法
java字符串转数字的方法
1、转化为int型数字 Integer.parseInt(String s) Integer.valueOf(String s);
2、转化为long型数字 Long.parseLong(String s) Long.valueOf(String s);
3、转化为float型数字 Float.parseFloat(String s) Float.valueOf(String s)
4、转化为double型数字 Double.parseDouble(String s) Double.valueOf(String s)
其余类型省略,请读者自行探索…
注意事项:
1.字符串内不能包含除数字之外的字符,不然会报错,java.lang.NumberFormatException
2.字符串长度要限制,不然也会出错
比如:String s =“20160926120625100000”,超过19位,就会出错,报java.lang.NumberFormatException
String s =“2016092612062510000”,不超过19位就不会
原因是Long类型的最大值位 Long.MAX_VALUE = 9223372036854775807,大于这个值都会出错
Long类型的最小值位 Long.MIN_VALUE=-9223372036854775808,小于这个值也会报错
方法a、通过基本类型对应的包装类则可以实现把字符串转换成基本类型。Java为8种基本类型都提供了对应的包装类:boolean对应Boolean、byte对应Byte、short对应Short、int对应Integer、long对应Long、char对应Character、float对应Float、double对应Double,8个包装类都提供了一个parseXxx(String str)静态方法用于将字符串转换成基本类型。(注意:如果字符串不是数值型字符串,转换将导致一个运行时错误。),如下左侧的示例代码。
方法b、i=Integer.valueOf(s).intValue(); 如下右侧的示例代码。
总结:方法a直接使用静态方法,不会产生多余的对象,但会抛出异常。方法b,Integer.valueOf(s) 相当于new Integer(Integer.parseInt(s)),也会抛异常,但会多产生一个对象。
后续叙述图片种的代码模板如下:
public class Demo { public static void main(String[] args) { String str = "123"; int num = Integer.parseInt(str); int sum = num + 100; System.out.println("Result is: " + sum); } }
1、转化为int型数字 Integer.parseInt(String s)
Integer.valueOf(String s);
2、转化为long型数字 Long.parseLong(String s)
Long.valueOf(String s);
3、转化为float型数字 Float.parseFloat(String s)
Float.valueOf(String s)
4、转化为double型数字 Double.parseDouble(String s) Double.valueOf(String s)
其余类型省略,请读者自行探索…
各种数字转字符串的3种方法
方法一、i + “”
方法二、String.valueOf(value)
各种数字类型转换成字符串型:其中 value 为任意一种数字类型。将不用担心value 是否为null值这一问题。
方法三、Object.toString(value )
在使用时要注意,必须保证object不是null值,否则将抛出NullPointerException异常。
效率:方法三>方法一>方法二,方法一和方法二差别不大。
代码示例如下:
public class Demo { public static void main(String[] args) { // int i = 123; // long i = 123; // float i = 123.123f; double i = 123.123; String s1 = i + ""; // 方法一 String s2 = String.valueOf(i); // 方法二 // 方法三 // String s3 = Integer.toString(i); // i需要是int // String s3 = Long.toString(i); // i需要是long // String s3 = Float.toString(i); // i需要是float String s3 = Double.toString(i); // i需要是double System.out.println("s1=" + s1); System.out.println("s2=" + s2); System.out.println("s3=" + s3); } }
运行结果:
s1=123.123
s2=123.123
s3=123.123
备注:方法1和2与待转换的数字类型无关;方法3与待转换的数字类型相关,不同的类型需要调用不同的方法。
到此这篇关于java字符串转数字,各种数字转字符串的3种方法的文章就介绍到这了,更多相关java字符串转数字内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
java中Executor,ExecutorService,ThreadPoolExecutor详解
这篇文章主要介绍了java中Executor,ExecutorService,ThreadPoolExecutor详解的相关资料,需要的朋友可以参考下2017-02-02
最新评论