一 int 与 Integer
1.1 int转Integer
方法一:通过Integer类的构造函数
int a = 123;
Integer b = new Integer(a);
方法二:Java的自动装箱功能
Integer b = 123;
参考我的博客:《Integer包装类的方法: valueOf, parseInt, intValue对比》
1.2 Integer转int
方法一:Integer类的intValue方法
Integer b = new Integer(123);
int a = b.intValue();
二 int[], char[], String[] 转String
2.1 String.valueOf & Arrays.toString 方法对比
代码:
import java.util.Arrays;
int[] ints = {-2,-1,0,1,2,3};
char[] chars = {'S','U','N'};
String[] strs = {"abc","efg"};
//String.valueOf方法:
System.out.println("String.valueOf(ints) : " + String.valueOf(ints));
System.out.println("String.valueOf(chars) : " + String.valueOf(chars));
System.out.println("String.valueOf(strs) : " + String.valueOf(strs));
System.out.println("----------------------------");
//Arrays.toString方法:
System.out.println("Arrays.toString(ints) : " + Arrays.toString(ints));
System.out.println("Arrays.toString(chars) : " + Arrays.toString(chars));
System.out.println("Arrays.toString(strs) : " + Arrays.toString(strs));
结果:
String.valueOf(ints) : [I@7852e922
String.valueOf(chars) : SUN
String.valueOf(strs) : [Ljava.lang.String;@4e25154f
----------------------------
Arrays.toString(ints) : [-1, 0, 1, 2, 3]
Arrays.toString(chars) : [S, U, N]
Arrays.toString(strs) : [abc, efg]
结论:
1 String.valueOf方法只适用于 char[ ] 类型的数组。
2 Arrays.toString方法适用所有类型的数组,但是生成的字符串带有" [ , , , ] "。
2.2 int[] 转 String
方法一:用StringBuffer拼接
int[] ints = {-1,0,1,2,3};
StringBuffer sb = new StringBuffer();
for(int i = 0; i < ints.length; i++)
sb.append(ints[i]);
String ans = sb.toString();
System.out.println(ans);
结果:
-10123
2.3 char[] 转 String
正确方法一:new String( char[] chars)
正确方法二:String.valueOf( char[] chars)
错误方法1:chars.toString()
错误方法2:Arrays.toString()
例子:
char[] chars = {'a','b','c'};
System.out.println("new String(): " + new String(chars));
System.out.println("String.valueOf(): " + String.valueOf(chars));
System.out.println("chars.toString(): " + chars.toString());
System.out.println("Arrays.toString(): " + Arrays.toString(chars));
结果:
new String(): abc
String.valueOf(): abc
chars.toString(): [C@1b6d3586
Arrays.toString(): [a, b, c]