java数据类型转换方法大全
发布日期:2021-05-07 06:30:37 浏览次数:26 分类:精选文章

本文共 3403 字,大约阅读时间需要 11 分钟。

 

数据转换内容借鉴多篇文章,该博客仅用于学习记录,将持续更新

 

目录


 

String类型

转换为char[]

String strStringType="dfad"; char[] ch; ch = strStringType.toCharArray();

 

转换为String[]

String string = "a,b,c";String [] stringArr= string.split(",");

转换为StringBuffer

方式一:利用构造函数

String str=“Hello World.”;StringBuffer buffer = new StringBuffer(str);

方式二:调用append函数

String str=“Hello World.”;StringBuffer buffer = new StringBuffer();buffer.append(str);

转换为int[]

String table_id="1,2,3,11,20,100";String[] strarr = table_id.split(",");int[] table_ids = new int[strarr.length];for(int i=0;i

转换为Arraylist<>

方法一 创建一个空Arraylist对象,在使用add()方法添加元素,如果想使用不同类型数据请改变相应的包装类和数据

//StringString[] words = {"ace", "boom", "crew", "dog", "eon"};        ArrayList
wordList = new ArrayList
(words.length); for (String e : words){ wordList.add(e); } for (String e : wordList){ System.out.println(e); }//Character char[] words = {'a','b', 'c'}; ArrayList
wordList = new ArrayList
(words.length); for (char e : words){ wordList.add(e); } for (char e : wordList){ System.out.println(e); }

 

char[]类型

转换为String

方法一:利用String构造方法

char d[] = {'s','h','a','n','g'};String str = new String(d);

方法二:利用String自带的valueOf()方法

char[] c = {'s','h','p','n','a'}; String r = String.valueOf(c);

转换为StringBuffer

方法一:先转换为String类型再转换为StringBuffer

char[] data = {'H','e','l','l','o','d'};String str = new String();//或者直接调用构造方法:String str = new String(data);str = String.valueOf(data);//调用String类的valueOf函数将字符数组转换成StringStringBuffer buffer = new StringBuffer();buffer = buffer.append(str);//调用append函数将String转换成Stringbuffer

转换为int[]

方法一先转换为String在转换为int[],转换使用parseInt()函数

String str = "69211621356";int[] arr = new int[str.length()];for (int i = 0; i < str.length(); i++) {  arr[i] = Integer.parseInt(str.substring(i, i + 1));//substring是找出包含起始位置,不包含结束位置,到结束位置的前一位的子串    }for(int i:arr)//输出数组arr   System.out.print(i+" ");

 

int[]类型

转换为List

int[] data = {4, 5, 3, 6, 2, 5, 1};                // int[] 转 List
List
list1 = Arrays.stream(data).boxed().collect(Collectors.toList()); // Arrays.stream(arr) 可以替换成IntStream.of(arr)。 // 1.使用Arrays.stream将int[]转换成IntStream。 // 2.使用IntStream中的boxed()装箱。将IntStream转换成Stream
。 // 3.使用Stream的collect(),将Stream
转换成List
,因此正是List
。 // int[] 转 Integer[] Integer[] integers1 = Arrays.stream(data).boxed().toArray(Integer[]::new); // 前两步同上,此时是Stream
。 // 然后使用Stream的toArray,传入IntFunction
generator。 // 这样就可以返回Integer数组。 // 不然默认是Object[]。 // List
转 Integer[] Integer[] integers2 = list1.toArray(new Integer[0]); // 调用toArray。传入参数T[] a。这种用法是目前推荐的。 // List
转String[]也同理。 // List
转 int[] int[] arr1 = list1.stream().mapToInt(Integer::valueOf).toArray(); // 想要转换成int[]类型,就得先转成IntStream。 // 这里就通过mapToInt()把Stream
调用Integer::valueOf来转成IntStream // 而IntStream中默认toArray()转成int[]。 // Integer[] 转 int[] int[] arr2 = Arrays.stream(integers1).mapToInt(Integer::valueOf).toArray(); // 思路同上。先将Integer[]转成Stream
,再转成IntStream。 // Integer[] 转 List
List
list2 = Arrays.asList(integers1); // 最简单的方式。String[]转List
也同理。 // 同理 String[] strings1 = {"a", "b", "c"}; // String[] 转 List
List
list3 = Arrays.asList(strings1); // List
转 String[] String[] strings2 = list3.toArray(new String[0]);

欢迎大家补充完善

上一篇:centos的my.cnf文件在哪里
下一篇:图(四):最短路径 (Dijkastra、Floyd)

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年03月28日 21时26分39秒