当前位置: 首页 > news >正文

java Long[] ids转为List<Long> ids

方法 1:使用 Arrays.asList

import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        Long[] ids = {1L, 2L, 3L, 4L};
        List<Long> list = Arrays.asList(ids);
        System.out.println(list); // 输出: 
    }
}
注意:
  • Arrays.asList 返回的是一个固定大小的 List,不能添加或删除元素。
  • 如果 ids 是 long[](基本类型数组),Arrays.asList 会将其视为单个元素,而不是转换为 List<Long>

方法 2:使用 Stream(Java 8+)

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        Long[] ids = {1L, 2L, 3L, 4L};
        List<Long> list = Arrays.stream(ids).collect(Collectors.toList());
        System.out.println(list); // 输出: 
    }
}
优点:
  • 返回的是一个可变的 List,支持添加或删除元素。
  • 适用于 Long[] 或 long[] 数组。

方法 3:使用 Collections.addAll

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        Long[] ids = {1L, 2L, 3L, 4L};
        List<Long> list = new ArrayList<>();
        Collections.addAll(list, ids);
        System.out.println(list); // 输出: 
    }
}
优点:
  • 返回的是一个可变的 List,支持添加或删除元素。

方法 4:手动遍历数组

import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        Long[] ids = {1L, 2L, 3L, 4L};
        List<Long> list = new ArrayList<>();
        for (Long id : ids) {
            list.add(id);
        }
        System.out.println(list); // 输出: 
    }
}
优点:
  • 灵活性高,可以在遍历时进行额外操作。

方法 5:使用 Guava 库(第三方库)

如果你使用了 Google Guava 库,可以使用 Lists.newArrayList

import com.google.common.collect.Lists;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        Long[] ids = {1L, 2L, 3L, 4L};
        List<Long> list = Lists.newArrayList(ids);
        System.out.println(list); // 输出: 
    }
}
优点:
  • 代码简洁,适用于多种集合操作。

总结

方法可变性是否需要额外库适用场景
Arrays.asList不可变不需要快速转换,不需要修改集合
Stream可变不需要Java 8+,支持链式操作
Collections.addAll可变不需要适用于多种集合类型
手动遍历可变不需要需要额外操作时使用
Guava可变需要使用 Guava 库时

推荐使用 方法 2(Stream),因为它简洁、功能强大,且适用于现代 Java 开发。

相关文章:

  • Python常用基础类库总结
  • python-leetcode-压缩字符串
  • c++的stl中有哪几种map容器,都有什么应用场景?
  • 【web前端开发】HTML排版标签、HTML语义化标签、常用的文本标签
  • C++11语法糖:auto和范围for循环详解
  • 面向联邦学习隐私保护的同态加密库优化算法研究
  • L1-018 大笨钟
  • java IO涉及实现的各个接口
  • AI术语整理(持续更新)
  • go语言中立即调用的匿名函数
  • 【算法day8】 Z 字形变换 -O(n)算法思路整理
  • 三角函数:从宇宙法则到AI革命的数学密钥
  • Git 高级指南:完整命令大全及进阶用法
  • Python Web项目的服务器部署
  • golang从入门到做牛马:第十五篇-Go语言切片(Slice):动态数组的“魔法”
  • 基于WPF的雷达上位机系统开发实践
  • 「AI 加持的高效架构」高并发场景下的服务器成本优化
  • 如何更有效管理项目风险
  • 数据类设计_图片类设计之4_规则类图形混合算法(前端架构)
  • CSDN博客:Markdown编辑语法教程总结教程(下)
  • 浙江一家长称小学老师打孩子还威胁要从3楼扔下,当地警方已立案
  • 美联储官员:美国经济增速可能放缓,现行关税政策仍将导致物价上涨
  • 俄乌直接谈判结束,乌称“毫无成果”
  • 最新研究:新型合成小分子可“精准杀伤”癌细胞
  • A股三大股指涨跌互现:银行股领涨,两市成交12915亿元
  • 沙县小吃中东首店在沙特首都利雅得开业,首天营业额超5万元