List与数组,Set之间互相转换,以及Map与Set等之间转换

  • List与数组之间互相转换
1、数组转成List
String[] arr ={"Nothing","gonna","change","my","love","for","you","WestLife"};
//方法一:数组转成List
//虽然Arrays.asList(arr)是不能改变的数组,但是可以创建一个新的List,将它作为参数传入
List<String> list = new ArrayList<>(Arrays.asList(arr));
//方法二:数组转成List
//利用for循环或者增强for
List<String> list1 = new ArrayList<>();
for(String s: arr){
     list1.add(s);
}

//2、List转成数组
//List转成数组
Object[] array = list.toArray();
  • Set与数组之间转换
//1、数组转成Set
//Arrays.asList(arr)返回的是一个list,但是list可以作为Set构造方法的参数
Set<String> set2 = new HashSet<>(Arrays.asList(arr));//arr承接上面的arr
set2.remove("WestLife");
Object[] objects = set2.toArray();

//2、Set转成数组
Object[] objects = set2.toArray();//与List一样
  •   List(ArrayList,LinkedList)和Set(hashSet,TreeSet)可以直接通过构造方法转换
//构造方法中都可以直接将Collection类型的集合作为参数传入
Set<String> set = new TreeSet<>(list);//list承接上面的list
List<String> list2 = new LinkedList<>(set);
  • Map与List,Set之间的转换
Map<Integer,String> map = new HashMap<>();
map.put(1,"a");
map.put(7,"t");
map.put(4,"y");
map.put(3,"w");
Set<Integer> set1 = map.keySet();
Set<String> set3 = new HashSet<>(map.values());

(1) map的keySet()方法可以将key转成Set集合,如果想将map的key转成List,可以通过Set转成List(见上)
(2) map的values()方法返回的是一个Collection类型,这个可以转成成任意List或Set;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值