文章目录
1、String和int之间的转换
(1) String转为int
String s = "12";
int a = Integer.parseInt(s);
(2)int转为String
int a = 12;
String s = String.valueOf(a);
2、String和char之间的转换
(1) char转为String
char c = 'a';
String s = String.valueOf(a);
(2) String中获取第i个字符
String s="123455";
char c = s.charAt(i);
(3) String转为char数组
String s="123455";
char[] ch = s.toCharArray();
(4) char数组转化为String
char[] ch = {'1','2','3','4','5'};
// 第一种方法
String s = String.valueOf(ch);
// 第二种方法
String s = new String(ch);
将指定范围的char数组转化为String
// 构造方法如下,截取从offset开始的count个字符,并转换成字符串
public String(char value[], int offset, int count)
// 所以可以是
String s = new String(ch,1,4);
// 结果是s="2345"
3、Integer与int间的转换
(1) Integer转为int
Integer integer=new Integer(10);
int i=integer.intValue(); // 第一种
int j=(int)integer; // 第二种
(2) int转为Integer
int i=10;
Integer integer=new Integer(i); // 第一种
Integer integer=Integer.valueOf(i); // 第二种
4、List快速转为数组
(1) ArrayList<Integer>转为int[]
使用stream流
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(2);
int[] a = list.stream().mapToInt(Integer::intValue).toArray();
toArray()方法
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
Integer[] arr = list.toArray(new Integer[list.size()]); // 这里得到的是Integer类型,还不是int类型
(2)ArrayList<int[]>转为int[][]
因为在List中是存不了int类型的,只能存Integer类型,但是却可以存int[],所以我们可以直接使用toArray()方法
List<int[]> list = new ArrayList<>();
list.add(new int[]{1,2});
list.add(new int[]{3,4});
list.add(new int[]{5,6});
int[][] arr = list.toArray(new int[list.size()][]);
5、String转为String数组
可以使用split对String进行分割,从而得到String数组。
但是,需要注意:
split()
方法根据匹配给定的正则表达式来拆分字符串。
注意: .
、 $
、 |
和 *
等转义字符,必须得加 \\
。
注意:多个分隔符,可以用 |
作为连字符
String version1 = "0.1.2.3";
String[] s1 = version1.split("\\.");
6、List转为String
将List<Integer>转为String
public static void main(String[] args) {
List<Integer> list = new ArrayList<>();
list.add(2);
list.add(1);
list.add(5);
list.add(4);
list.add(3);
String str = list.toString();
System.out.println(str);
}
结果:
我们可以继续操作将字符串转为字符数组
str = str.substring(1,str.length()-1); // 去掉两边的'['和’]’
String[] s = str.split(",");
for (String s1 : s) {
System.out.print(s1 + " ");
}
结果: