java中 set,list,array(集合与数组)相互转换

 

 1 public static Object[] List2Array(List<Object> oList) {   
 2         Object[] oArray = oList.toArray(new Object[] {});   
 3         // TODO 需要在用到的时候另外写方法,不支持泛型的Array.   
 4         return oArray;   
 5     }   
 6   
 7     public static Object[] Set2Array(Set<Object> oSet) {   
 8         Object[] oArray = oSet.toArray(new Object[] {});   
 9         // TODO 需要在用到的时候另外写方法,不支持泛型的Array.   
10         return oArray;   
11     }   
12   
13     public static <T extends Object> List<T> Set2List(Set<T> oSet) {   
14         List<T> tList = new ArrayList<T>(oSet);   
15         // TODO 需要在用到的时候另外写构造,根据需要生成List的对应子类。   
16         return tList;   
17     }   
18   
19     public static <T extends Object> List<T> Array2List(T[] tArray) {   
20         List<T> tList = Arrays.asList(tArray);   
21         // TODO 单纯的asList()返回的tList无法add(),remove(),clear()等一些影响集合个数的操作,   
22         // 因为Arrays$ArrayList和java.util.ArrayList一样,都是继承AbstractList,   
23         // 但是Arrays$ArrayList没有override这些方法,而java.util.ArrayList实现了。   
24         // TODO 建议使用List的子类做返回,而不是Arrays$ArrayList。根据需要吧。如下行注释:   
25         // List<T> tList = new ArrayList<T>(Arrays.asList(tArray));   
26         return tList;   
27     }   
28   
29     public static <T extends Object> Set<T> List2Set(List<T> tList) {   
30         Set<T> tSet = new HashSet<T>(tList);   
31         //TODO 具体实现看需求转换成不同的Set的子类。   
32         return tSet;   
33     }   
34   
35     public static <T extends Object> Set<T> Array2Set(T[] tArray) {   
36         Set<T> tSet = new HashSet<T>(Arrays.asList(tArray));   
37         // TODO 没有一步到位的方法,根据具体的作用,选择合适的Set的子类来转换。   
38         return tSet;   
39     }

 

转载于:https://www.cnblogs.com/shanxiulian/p/6529407.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/269862.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

@Async注解导致循环依赖,BeanCurrentlyInCreationException异常

使用Async异步注解导致该Bean在循环依赖时启动报BeanCurrentlyInCreationException异常的根本原因分析&#xff0c;以及提供解决方案 今天在自己项目中使用Async的时候&#xff0c;碰到了一个问题&#xff1a;Spring循环依赖&#xff08;circular reference&#xff09;问题。 …

人工智能:图像数字化相关的知识介绍

❤️作者主页&#xff1a;IT技术分享社区 ❤️作者简介&#xff1a;大家好,我是IT技术分享社区的博主&#xff0c;从事C#、Java开发九年&#xff0c;对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。 ❤️个人荣誉&#xff1a; 数据库领域优质创作者&#x1f3c6;&#x…

《深入理解Java虚拟机》读书笔记

堆分配参数&#xff1a; -XX:PrintGC 使用该参数&#xff0c;虚拟机启动后&#xff0c;只要遇到GC就会打印日志&#xff1b; -XX&#xff1a;UseSerialGC 配置串行回收器&#xff1b; -XX&#xff1a;PrintGCDeltails 可以查看详细信息&#xff0c;包括各个区的情况 -Xms&#…

线程可见性和关键字volatile

线程可见性 可以看到程序变量running没volatile是死循环 加了volatile成功输出 public class VolitaleTest {private static volatile boolean running true;public static void main(String[] args) {Thread thread new Thread(() ->{long i 0L;while (running){i;}Sys…

codeforce 768B Code For 1

题意&#xff1a;将n分解为n/2, n%2, n/2三部分&#xff0c;再将n/2分解。。得到一个序列只有0和1&#xff0c;给出[l, r]问l到r有几个1#include <stdio.h> #define ll __int64 ll query(ll L,ll R,ll l,ll r,ll n){if(l r) return n;ll mid (lr)>>1, ans0;if(L …

每秒钟承载600万订单级别的无锁并行计算框架 Disruptor学习

1.来源 Disruptor是英国外汇交易公司LMAX开发的一个高性能队列&#xff0c;研发的初衷是解决内部的内存队列的延迟问题&#xff0c;而不是分布式队列。基于Disruptor开发的系统单线程能支撑每秒600万订单&#xff0c;2010年在QCon演讲后&#xff0c;获得了业界关注。 2.应用背…

logisim输出变成红色的e_新车实拍解析 福特Mustang Mach-E亮点实拍图解

福特Mustang Mach-E新车主要针对造型设计对外进行了首次亮相发布&#xff0c;对新车内饰以及具体新车方面的数据信息暂未公布。如果消费者想要了解这款新车&#xff0c;大家可以继续关注《杨总继续观察》带来这款新车的详细报道。新车在设计上可以看作是一款福特野马的电动跨界…

castle windsor学习----- Services and Components 两者的定义

转载于:https://www.cnblogs.com/lanpingwang/p/6534208.html

html5 接收蓝牙广播_蓝牙定位技术浅析(化工厂应用)

蓝牙定位基于RSSI(Received Signal Strength Indication&#xff0c;信号场强指示)定位原理。根据定位端的不同&#xff0c;蓝牙定位方式分为网络侧定位和终端侧定位。由于蓝牙由于是近场通信其定位精度取决于点位的部署密度&#xff0c;一般会设计成7-8米一个定位基站&#xf…

C#中的泛型和泛型集合

泛型 泛型引入了一个概念:类型参数。通过使用类型参数&#xff08;T&#xff09;减少了运行时强制转换或装箱操作的风险&#xff0c;通过泛型可以最大限度的重用代码&#xff0c;保护类型的安全及提高性能&#xff0c;他的最常见应用就是创建集合类&#xff0c;可以约束集合类中…

catia如何整列加工_”模具加工“最全面的诠释,你真的都懂了吗?

1定义模具加工(Mold Making)是指成型和制坯工具的加工&#xff0c;此外还包括剪切模和模切模具。通常情况下&#xff0c;模具有上模和下模两部分组成。将钢板放置在上下模之间&#xff0c;在压力机的作用下实现材料的成型&#xff0c;当压力机打开时&#xff0c;就会获得由模具…

tar 打包命令

tar zcvf /www/web/111/999.tar ./999 把相前目录下面的999文件夹打包到/www/web/111/目录下面转载于:https://www.cnblogs.com/hakeer/p/6535458.html

mysql中基本的DDL语句(关注一下,以后会继续更新喔!)

一.简单介绍sql 一.简单介绍sql &#xff08;1&#xff09;结构化查询语言&#xff08;Structured Query Language,SQL&#xff09;是一种有特殊目的的编程语言&#xff0c;也是一种数据库查询和一些程序设计语言&#xff0c;专用于存储及调用数据以及查询、更新和管理关系数…

[ST2017] Lab1: Triangle type and Junit test

Lab1 3014218071 王汉超 Request: Write a program with a function(getTriangleStatus) and test it, which takes three double number l1, l2, l3 as lengths of triangle sides and calculates whether the triangle is equilateral, isosceles, or scalene. Contents: 一.…

说说图片加载不出来_晒晒我的新家,朋友都说好看,恨不得天天宅在卧室不出来...

我和老婆是高中同学&#xff0c;早年因为没有考上大学&#xff0c;我早早的来北京闯事业&#xff0c;也吃了很多苦&#xff0c;好在那时机会很多&#xff0c;做什么都能赚点钱&#xff0c;生活质量也逐渐好了起来&#xff0c;配得上我老婆这样的大学生&#xff0c;今年和老婆结…