java 不同数据类型间相互转换
1. int 转 String
1、String s=num+"" //效率最低
2、String s=String.valueOf(num) //效率最高
3、String s=Integer.toString(num)
2. String 转 int
1、int num=Integer.parseInt(str)
2、int num=Integer.valueOf(str).intValue() //效率最高
3. int 转 char
1、强制转换: char ch=(char)num
2、先转成String后再转为char型 :
int a = 4;
String str = String.valueOf(a);
char[] array = str.toCharArray();
for (int i = 0; i < array.length; i++) {
System.out.print(array[i]);}
4.char 转 int
1、先转成String再转成int
char ch='7'; //ch 只能数字,否则报错
int num=Integer.parseInt(String.valueOf(ch));
2. int num=(char)num; //获得的是num字符的ASCII码值
5. char 转 String
1、String s=String.valueOf(ch); //效率最高
2、String s= Character.toString(c);
3、String s= ch+""; //效率最低
4、String s = new Character('c').toString();
6. String 转 char
1、char ch =String.charAt(index);
7. String 转 char[]
1、char[] ch= String.toCharArray();
8. char[] 转 String
char data[] = {'a', 'b', 'c'};
1、String s=new String(data);
2、String s=String.valueOf(data);
3、String s = new String(new char[]{ch});
9. Array、List、Set 、Map 相互转换
1、 Array、List、Set 转 Map : 一个个put添加元素
2、 List 转 Set :Set<String> mapKeySet = new HashSet<>(list);
3、 Set 转 List :List<String> mapKeyList = new ArrayList<>(set);
4、 Map 转 Set :
Map的key转为Set: Set mapKeySet = map.keySet();
Map的value转为Set:Set mapValuesSet =newHashSet(map.values());
5、 Array 转 List:
String data[] = {"s", "g", "k"};
1、List<String> list=new ArrayList<>();
list.addAll(Arrays.asList(data));
2、 List<String> list = Arrays.asList(s);//Arrays.asList()方法的返回对象是一个Arrays内部类,并没有实现集合的修改方法。因此转化后的List并不能添加新元素或删除元素,会报错
6、 Array 转 Set
String[] arr = new String[]{"a", "b", "c"};//转换成Set集合之后可以添加元素或删除元素
Set<String> set = new HashSet<>(Arrays.asList(arr));//修改集合不会影响原有数组,这种方式转换出来的Set相对原来的的数据来说是倒序的
7、 List 、set 转 Array
String[] arr = new String[]{"a", "b", "c"};
List list = Arrays.asList(arr);
Set set = new HashSet(list);
String[] arr1 = (String[])list.toArray();//调用Collection.toArray(T[] t)方法的集合需要有指定其中元素的具体类型,否则会出现类型转换无效的情况(编译直接报错),这时候需要强行转化才可以。
String[] arr2 = (String[])set.toArray();//使用Collection.toArray()转换出来的数组是一个新的数组,不会影响到原来的数组。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。