java实现列表、集合与数组之间转化的方法
程序员文章站
2024-03-03 21:05:16
本文实例讲述了java实现列表、集合与数组之间转化的方法。分享给大家供大家参考。具体实现方法如下:
复制代码 代码如下:package test;
imp...
本文实例讲述了java实现列表、集合与数组之间转化的方法。分享给大家供大家参考。具体实现方法如下:
复制代码 代码如下:
package test;
import java.util.arraylist;
import java.util.arrays;
import java.util.hashset;
import java.util.list;
import java.util.set;
public class test2 {
public static void main(string[] args) {
list list = new arraylist();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
// list.add(1);//会产生java.lang.arraystoreexception异常
// 当list中的数据类型都一致时可以将list转化为数组
object[] array = list.toarray();
system.out.println("从list转换成的对象数组长度为:" + array.length);
// 在转化为其它类型的数组时需要强制类型转换,并且,要使用带参数的toarray方法,参数为对象数组,
// 将list中的内容放入参数数组中,当参数数组的长度小于list的元素个数时,会自动扩充数组的长度以适应list的长度
string[] array1 = (string[]) list.toarray(new string[0]);
system.out.println("从list转换成的字符串数组长度为:" + array1.length);
// 分配一个长度与list的长度相等的字符串数组
string[] array2 = (string[]) list.toarray(new string[list.size()]);
system.out.println("从list转换成的字符串数组长度为:" + array2.length);
list.clear();
// 将数组转换成list
for (int i = 0; i < array.length; i++) {
list.add(array[i]);
}
system.out.println("将数组转换成list的元素个数为:" + list.size());
list.clear();
// 直接使用arrays的aslist方法
list = arrays.aslist(array);
system.out.println("将数组转换成list的元素个数为:" + list.size());
set set = new hashset();
set.add("a");
set.add("b");
// 将set转换为数组
array = set.toarray();
array1 = (string[]) set.toarray(new string[0]);
array2 = (string[]) set.toarray(new string[set.size()]);
system.out.println("从set转换成的对象数组长度为:" + array.length);
system.out.println("从set转换成的字符串数组长度为:" + array2.length);
// 数组转换成set
// 将数组转换成list后,再用list构造set
set = new hashset(arrays.aslist(array));
system.out.println("将数组转换成set的元素个数为:" + list.size());
// 将set清空,然后把数组转换成的list全部add
set.clear();
set.addall(arrays.aslist(array1));
system.out.println("将数组转换成set的元素个数为:" + list.size());
}
}
import java.util.arraylist;
import java.util.arrays;
import java.util.hashset;
import java.util.list;
import java.util.set;
public class test2 {
public static void main(string[] args) {
list list = new arraylist();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
// list.add(1);//会产生java.lang.arraystoreexception异常
// 当list中的数据类型都一致时可以将list转化为数组
object[] array = list.toarray();
system.out.println("从list转换成的对象数组长度为:" + array.length);
// 在转化为其它类型的数组时需要强制类型转换,并且,要使用带参数的toarray方法,参数为对象数组,
// 将list中的内容放入参数数组中,当参数数组的长度小于list的元素个数时,会自动扩充数组的长度以适应list的长度
string[] array1 = (string[]) list.toarray(new string[0]);
system.out.println("从list转换成的字符串数组长度为:" + array1.length);
// 分配一个长度与list的长度相等的字符串数组
string[] array2 = (string[]) list.toarray(new string[list.size()]);
system.out.println("从list转换成的字符串数组长度为:" + array2.length);
list.clear();
// 将数组转换成list
for (int i = 0; i < array.length; i++) {
list.add(array[i]);
}
system.out.println("将数组转换成list的元素个数为:" + list.size());
list.clear();
// 直接使用arrays的aslist方法
list = arrays.aslist(array);
system.out.println("将数组转换成list的元素个数为:" + list.size());
set set = new hashset();
set.add("a");
set.add("b");
// 将set转换为数组
array = set.toarray();
array1 = (string[]) set.toarray(new string[0]);
array2 = (string[]) set.toarray(new string[set.size()]);
system.out.println("从set转换成的对象数组长度为:" + array.length);
system.out.println("从set转换成的字符串数组长度为:" + array2.length);
// 数组转换成set
// 将数组转换成list后,再用list构造set
set = new hashset(arrays.aslist(array));
system.out.println("将数组转换成set的元素个数为:" + list.size());
// 将set清空,然后把数组转换成的list全部add
set.clear();
set.addall(arrays.aslist(array1));
system.out.println("将数组转换成set的元素个数为:" + list.size());
}
}
希望本文所述对大家的java程序设计有所帮助。