Java集合编程小技巧(持续更新)

说明

在编程中我们一直会思考,我们如何将我们的代码写得更加好一些,而不至于一直写那些原生的代码,这样会看起来比较繁琐。其次,这里也总结了一些常用的编程技巧。

1、获取集合的倒数第k个元素

我们的集合元素下标是从0开始的,如果要得到集合中的倒数第k个元素,只需要:list.size() - k即可

		linkedList.get(linkedList.size() - k);

2、将一个集合快速复制到另一个集合中

如何将一个集合快速复制到另一个集合中,而不是new一个新的集合遍历之前的集合?

		LinkedList<Object> linkedOne = new LinkedList<>();
		linkedOne.add(1);
		linkedOne.add(2);
		linkedOne.add(3);
		LinkedList<Object> linkedTwo = new LinkedList<>(linkedOne);
		System.out.println(linkedTwo);

3、将一个集合按照k值切割为多个小集合

    List<Integer> list = new ArrayList<>();
	    list.add(1);
	    list.add(2);
	    list.add(3);
	    list.add(4);
	    list.add(5);
	    List<Integer> collect = list;
	    int k = 2;
	    int i =0;
	    while (collect.size() >= k ) {
	          collect = list.stream().skip(i * k).limit(k).collect(Collectors.toList());
		  System.out.println(collect+":size-->"+collect.size());
		  i++;
	    }

注意:这个skip()不是从下标0开始的,是从1开始的。

4、如何反转一个集合中所有的元素

反转集合中的元素我们不能使用stream流计算,我们使用Collections工具类。

    List<Integer> list = new ArrayList<>();
    Collections.reverse(list );

5、如何使用一行代码得出集合中的最大最小值

最小值

    List<Integer> list = new ArrayList<>();
    Integer min = list.stream().min(Comparator.comparing(Integer::intValue)).get();

最大值

    List<Integer> list = new ArrayList<>();
    Integer min = list.stream().max(Comparator.comparing(Integer::intValue)).get();

6、如何将一个List转成一个Array

    List<Integer> list = new ArrayList<>();
    int[] array = list.stream().mapToInt(Integer::intValue).toArray();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值