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

集合转数组

首先,我们在看到集合转数组的时候可能第一个想到的就是toArray(),但是我们在调用 toArray()的时候,可能会遇到异常 java.lang.ClassCastException;这是因为 toArray()方法返回的类型是 Obejct[],如果我们将其转换成其他类型,可能就会抛出异常。 这是因为 Java并不支持向下转型。

方法一:通过遍历将集合中的元素一个个取出来放进数组里。

		List<Integer> list = new ArrayList<>();list.add(1);list.add(2);list.add(3);int[] res = new int[list.size()];for(int i = 0; i < list.size(); i++){res[i] = list[i];}

方案二:通过泛型实现转换

        List<Integer> list = new ArrayList<>();Collections.addAll(list, 1,2,3,4,5,6);Integer[] nums = new Integer[list.size()];nums = list.toArray(nums);for(Integer n:nums){System.out.println(n);}

但是通过toArray()不能直接将List对象转换为一般类型的数组。

方案三:使用stream()流

        List<Integer> list = new ArrayList<>();Collections.addAll(list, 1,2,3,4,5,6);int []nums=new int[]{1,2,3};//List<Integer> 转 int[]   int[] arr1 = list.stream().mapToInt(Integer::valueOf).toArray();// int[] 转 List<Integer>       List<Integer> list1 = Arrays.stream(nums).boxed().collect(Collectors.toList());

参考文章:List的toArray()方法_list.toarray_皮卡西的博客-CSDN博客

http://www.lryc.cn/news/116211.html

相关文章:

  • 使用Python将Word文档转换为PDF的方法
  • Java 判断一个字符串在另一个字符串中出现的次数
  • 设计模式十三:代理(Proxy Pattern)
  • Redis基础 (三十八)
  • maven中的scope
  • 【网络基础实战之路】实现RIP协议与OSPF协议间路由交流的实战详解
  • CNN(四):ResNet与DenseNet结合--DPN
  • 汽车EBSE测试流程分析(四):反思证据及当前问题解决
  • 如何在Spring MVC中使用@ControllerAdvice创建全局异常处理器
  • 2023/08/05【网络课程总结】
  • log_softmax比softmax更好?
  • [LeetCode - Python]344.反转字符串(Easy);345. 反转字符串中的元音字母(Easy);977. 有序数组的平方(Easy)
  • 【SOP】最佳实践之 TiDB 业务写变慢分析
  • 带有参数的 PL/SQL 过程/函数从选择查询返回表
  • 文件的权限
  • vue3集成echarts最佳实践
  • 一位年薪40W的测试被开除,回怼的一番话,令人沉思
  • 网络适配器和MAC地址
  • react-player静音不能自动播放问题
  • 培训Java技术要多久才能学会?答案都在这里啦
  • Java中使用HttpPost发送form格式的请求
  • C语言----字节对齐
  • Next.js入门介绍(服务端渲染)
  • 模板Plus
  • spring事务和数据库事务是怎么实现
  • el-date-picker设置默认当前日期
  • vue中使用this.$refs获取不到子组件的方法,属性方法都为undefined的解决方法
  • Linux命令200例:df用于显示文件系统的磁盘空间使用情况
  • Service not registered 异常导致手机重启分析
  • 深度解读|一站式ABI平台 Smartbi Insight V11 能力再升级