String-系列int-String-StringBuffer三者之间的相互转换

我们在java基础学习中经常会遇到一些基本类型数据之间的相互转换,今天我在这里记录一下int-String-StringBuffer三种类型之间的相互转换的常见的集中方式.

一.首先呢先介绍int->String类型转换的三种方式:

方式1:采用拼接空串的方式直接将int型数据转换成String类型

 int a = 100 ;
 String s1 = a + "";
 System.out.println("s1:"+s1);//100

方式2:先将int->Integer->String

 int b = 200;
 Integer i = new Integer(b);//这里先将int型转换成Integer类型
 String s2 = i.toString();//调用toString方法将Integer类型数转换成String
 System.out.println("s2:"+s2);//200

方式3: public static String toString(int i)返回一个表示指定整数的 String 对象。

 int c = 300;
 String s3 = Integer.toString(c);
 System.out.println("s3:"+s3);//300

二.接下来我们介绍两种常用的String->int的转换方式

方式1: String->Integer->int
注意利用Integer转换的字符串必须是纯数字类型的字符串否则就会报错

String s6 = "300yangkai";//字符串中包含字母的情况
Integer in2 = new Integer(s6);
System.out.println(in2);
**异常**
Exception in thread "main" java.lang.NumberFormatException: For input string: "300yangkai"
String s4 = "400";
Integer integer = new Integer(s4);//先将String类型先转换为Integer类型
int num1 = integer.intValue();//然后调用intValue()方法将Integer类型转换为Int类型
System.out.println("num1:"+num1);//400

方式2: Integer中有一个ParseInt(s)返回int型

String s5 = "500";
int num2 = Integer.parseInt(s5);
System.out.println("num2:"+num2);//500

三.最后我们介绍两种常用的String->StringBuffer的转换方式
//首先考虑String->StringBuffer的转换
        //值得注意的是:我们不能直接将String类型的对象直接赋给StringBuffer类型
        //String s1 = "hello";
        //StringBuffer sb = s1;
        //StringBuffer sb = "hello"; 这两种方式都是错误的

那我们应该怎样实现String->StringBuffer之间的相互转换呢???

String->StringBuffer:

方法1. 采用有参构造,通过StringBuffer()的有参构造将String类型的字符串作为参数传入

String s1 = "qiangsen";
StringBuffer sb1 = new StringBuffer(s1);
System.out.println("sb1:"+sb1);//sb1:qiangsen

方法2.采用无参构造方法,利用StringBuffer 对象的sppend()方法将String拼接在后面实现转换.

 String s1 = "qiangsen" ;
 StringBuffer sb2 = new StringBuffer();
 sb2.append(s1);
 System.out.println("sb2:"+sb2);//sb2:qiangsen

StringBuffer->String
方法1.

StringBuffer sb3 = new StringBuffer("qiangsen");//先生成一个Buffer对象
String s4 = sb3.toString();//接着调用toString()方法将buffer类型转换成String类型

方法2.

StringBuffer sb3 = new StringBuffer("qiangsen");
String s2 = new String(sb3);//直接利用String的有参构造将buffer类型直接转换成为String类型
  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值