Java中List和数组Array和String之间的相互转换
之前面试的时候遇到一个问题,先给大家分享一下。问:我想分别得到list,string和数组的长度,我能通过什么代码来得到?
这个问题先留一下,最后再告诉大家。。。
今天我们主要讲的是List,Array和String之间的相互转换,这三种都是我们常用的Java对象,那么你们是否足够的了解它们,并能够灵活的将它们进行转换呢。
String转换为数组:
String str = "1,2,3";
String[] a = str.split(",");
String转换为List(先转数组,再转list):
String str = "1,2,3";
List l = Arrays.asList(str.split(","));
数组转换为String:
①有commons-lang3.jar(一般都有)
String[] array = {"1", "2"};
String s = StringUtils.join(array, ",");
①无commons-lang3.jar
String[] array = {"1", "2"};
String s1 = Arrays.toString(array);
String s = s1.substring(1, s1.length()-1);
数组转换为List:
String[] array = {"1", "2"};
List l = Arrays.asList(array);
List转换为String:
①有commons-lang3.jar(一般都有)
List list = new ArrayList();
list.add("1");
list.add("2");
String s = StringUtils.join(list , ",");
①无commons-lang3.jar
List list = new ArrayList();
list.add("1");
list.add("2");
String s1 = list.toString();
String s = s1.substring(1, s1.length()-1);
List转换为数组:
List list = new ArrayList();
list.add("1");
list.add("2");
String[] a = list.toArray(new String[list.size()]);
以上就是我为大家归纳整理的List,String和数组之间相互转换的方法了。都是比较常见而且几乎不依赖jar包的,当然,如果你有更简便的方法也可以在下方留言,大家一起讨论进步。
最后就是回答我一开始提出的问题了,希望大家都能记住,毕竟,This is common sense!
Integer i = list.size(); -- List的size方法可以得到List的长度
Integer i = array.length; -- 数组的length属性可以得到数组的长度
Integer i = string.length(); -- String的length方法可以得到String的长度