java map转 数组中_java8--- List、Map、数组互转

import constant.Collect;

import entity.User;

import java.util.*;

import java.util.function.Function;

import java.util.stream.Collectors;

import java.util.stream.Stream;

public class CollectionMy {

public static void main(String[] args) {

// String[] arrays = {"hello"," , ","world"};

//

// System.out.println(arrayToList1(arrays));

// System.out.println(arrayToList2(arrays));

// System.out.println(listToArray1(arrayToList2(arrays)));

// System.out.println(listToArray2(arrayToList2(arrays)));

//

// Map result = listToMap1(Collect.listEntiyChina);

// System.out.println(result);

// Map result = listToMap2(Collect.listEntiyChina);

// System.out.println(result);

// sortList(Collect.listEntiyJapan);

//

Map> result = listToMap4(Collect.listEntiyJapan);

System.out.println(result);

Map mapRepeat = new HashMap<>();

}

/**

* Java8 数组转为List

* @param arrays

* @return

*/

public static List arrayToList1(String[] arrays) {

List result = Stream.of(arrays).collect(Collectors.toList());

return result;

}

/**

* Java8 List转为数组

* @param list

* @return

*/

public static String[] listToArray1( List list) {

String[] result = list.stream().toArray(String[]::new);

Arrays.stream(result).forEach(str -> System.err.println(str));

return result;

}

/**

* Java8 List转为Map

* ID 必须为唯一性

* @param list

* @return

*/

public static Map listToMap1(List list) {

Map result = list.stream().collect(Collectors.toMap(e -> e.getId(), Function.identity()));

return result;

}

/**

* Java8 List转为Map

* ID 必须为唯一性

* @param list

* @return

*/

public static Map listToMap2(List list) {

Map result = list.stream().collect(Collectors.toMap(User::getId, user->user));

return result;

}

/**

* Java8 List转为Map

* ID重复分组

* @param list

* @return

*/

public static Map> listToMap3(List list) {

Map> result = list.stream().collect(Collectors.groupingBy(User::getId));

return result;

}

/**

* Java8 List转为Map

* 根据年龄排序后,再根据ID重复分组

* @param list

* @return

*/

public static Map> listToMap4(List list) {

Collections.sort(list, Comparator.comparing(User::getId).thenComparing(User::getAge));

list.forEach(System.out::println);

System.out.println("----------------");

Map> result = list.stream().collect(Collectors.groupingBy(User::getId));

return result;

}

public static void sortList(List list) {

Collections.sort(list, Comparator.comparing(User::getId).thenComparing(User::getAge));

list.forEach(System.out::println);

}

public static List arrayToList2(String[] arrays) {

List result = Arrays.asList(arrays);

return result;

}

public static String[] listToArray2( List list) {

String[] result = list.toArray(new String[list.size()]);

return result;

}

—————————————— https://www.iteye.com/blog/bugyun-2433872

标签:Map,return,List,list,println,result,互转

来源: https://www.cnblogs.com/hahajava/p/12144197.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值