package com.net.xinfang.reflect;

import java.util.ArrayList;

import java.util.Arrays;

import java.util.HashMap;

import java.util.HashSet;

import java.util.List;

import java.util.Map;

import java.util.Set;

/***

* Array、Set、List、Map相互转换

* @author xinfang

*

*/

public class ConvertorTest {

/**

* @param args

*/

public static void main(String[] args) {

testList2Array();//List-Array

testArray2List();//Array-List

testSet2List();//Set-List

testList2Set();//List-Set

testSet2Array();//Set-Array

testArray2Set();//Array-Set

testMap2Set();//Map-Set

testMap2List();//Map-List

}

private static void testMap2List() {

Map map = new HashMap();

map.put("A", "ABC");

map.put("K", "KK");

map.put("L", "LV");

// 将Map Key 转化为List

List mapKeyList = new ArrayList(map.keySet());

System.out.println("mapKeyList:" + mapKeyList);

// 将Map Key 转化为List

List mapValuesList = new ArrayList(map.values());

System.out.println("mapValuesList:" + mapValuesList);

}

private static void testMap2Set() {

Map map = new HashMap();

map.put("A", "ABC");

map.put("K", "KK");

map.put("L", "LV");

// 将Map 的键转化为Set

Set mapKeySet = map.keySet();

System.out.println("mapKeySet:" + mapKeySet);

// 将Map 的值转化为Set

Set mapValuesSet = new HashSet(map.values());

System.out.println("mapValuesSet:" + mapValuesSet);

}

private static void testArray2Set() {

String[] arr = { "AA", "BB", "DD", "CC", "BB" };

// 数组-->Set

Set set = new HashSet(Arrays.asList(arr));

System.out.println(set);

}

private static void testSet2Array() {

Set set = new HashSet();

set.add("AA");

set.add("BB");

set.add("CC");

String[] arr = new String[set.size()];

// Set-->数组

set.toArray(arr);

System.out.println(Arrays.toString(arr));

}

private static void testList2Set() {

List list = new ArrayList();

list.add("ABC");

list.add("EFG");

list.add("LMN");

list.add("LMN");

// List-->Set

Set listSet = new HashSet(list);

System.out.println(listSet);

}

private static void testSet2List() {

Set set = new HashSet();

set.add("AA");

set.add("BB");

set.add("CC");

// Set --> List

List setList = new ArrayList(set);

System.out.println(setList);

}

private static void testList2Array() {

// List-->数组

List list = new ArrayList();

list.add("AA");

list.add("BB");

list.add("CC");

Object[] objects = list.toArray();// 返回Object数组

System.out.println("objects:" + Arrays.toString(objects));

String[] arr = new String[list.size()];

list.toArray(arr);// 将转化后的数组放入已经创建好的对象中

System.out.println("strings1:" + Arrays.toString(arr));

}

private static void testArray2List() {

// 数组-->List

String[] ss = { "JJ", "KK" };

List list1 = Arrays.asList(ss);

List list2 = Arrays.asList("AAA", "BBB");

System.out.println(list1);

System.out.println(list2);

}

}

java中集合类的转换_JAVA-常用集合类型转换例子(基础必备)相关推荐

  1. java中集合类的转换_Java中的两个常用工具类及集合数组的相互转换

    为了编程人员的方便及处理数据的安全性,Java特别提供了两个非常有用的工具类: 一.Collections 1.Collections类的特点: 集合框架的工具类.里面定义的都是静态方法. 2.Col ...

  2. java中list元素排序_java list集合元素根据某些字段排序

    一.jdk1.6的环境下 新建ComparatorSort类,并实现Comparator接口,重写compare方法 降序排序:o1的元素>o2的元素,并返回-1:o1的元素小于o2的元素,并返 ...

  3. java中进制转换_java中的进制转换

    进制转换原理 十进制 转 二进制: 原理: 对十进制数进行除 2 运算取余. 6 --> 110 二进制 转 十进制 原理: 二进制 乘以 2 的n次幂 的过程 110 ->0*20+ 1 ...

  4. java中日期如何转换_java如何转换日期格式?

    展开全部 import java.util.*; import java.text.*; import java.util.Calendar; public class VeDate { /** * ...

  5. java中拼接xml方法_Java常用工具类,拼接XML格式的字符串,非常好用

    import java.util.ArrayList; import java.util.Iterator; import java.util.LinkedHashMap; import java.u ...

  6. java中审核订单流程图_Java 后端横扫阿里、滴滴、美团总结的面试经验!

    这次面试的公司有一点点多,主要是因为毕业后前两份工作找的都很草率,这次换工作就想着,emm,毕业三年了,该找个工作好好沉淀几年了. 先说下这次面试的结果吧: 到 hr 面的:阿里.美团.滴滴.金山云. ...

  7. java中list,set,map集合的区别,及面试要点

    Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...

  8. java中把map转换成list

    private String key;     private String value;          //把map转换成list的公共方法     public static List map ...

  9. java 父类强制转换为子类_[java]Java中父类强制转换成子类的原则

    Java中父类强制转换成子类的原则:父类型的引用指向的是哪个子类的实例,就能转换成哪个子类的引用. 例: public class Test { public static void main(Str ...

最新文章

  1. SAP MM 采购发票上的金额小差异
  2. minheight能继承吗_CSS 哪些属性默认会继承, 哪些不会继承?
  3. 计算勒让德多项式的系数
  4. js 数组遍历符合条件跳出循环体_Javascript数组循环遍历之forEach详解
  5. Access注入偏移爆字段
  6. python中常用的模块二
  7. 荐号 | 11个人工智能与大数据相关的个人、企业优质号
  8. win11 32位官方版原版镜像文件v2021.07
  9. MySQL数据同步的一个很初级运用
  10. python之list[index1:index2]是左闭右开
  11. 实战OO设计——类的关系:依赖、关联、聚合和组合
  12. 独立树Graph Coloringhttp://poj.org/problem?id=1419最大团问题
  13. 启动win内linux系统吗,现在装的是linux系统,在未使用的分区内又装一个win7系统,但是启动时只有一个window系统是为什么??...
  14. node.js环境搭建超详细图文教程
  15. redies用途和使用场景
  16. JAVA查搜索文件内容
  17. 个人博客毕业设计设计总结
  18. 宽带连接蓝屏,或者显示813占用端口
  19. 从零开始做运营第一课:运营是做什么的?一篇文章解释清楚!
  20. SpringBoot 系列教程(九十二):Spring Boot全局设置Jackson时间处理

热门文章

  1. linux常用命令--实用小技巧
  2. 数据库之MySQL补充
  3. 自定义UITabBar的背景图片或者颜色
  4. 项上的温柔,冬季围巾8大打法图解(组图)
  5. Android ContextCompat 使用详解
  6. Flutter InteractiveViewer 支持平移和缩放子Widget
  7. Java、JS、OC、Flutter的Base64编码和解码
  8. vue中Axios网络请求之Vue知识点归纳(十)
  9. 二级指针做输入_第2种内存模型
  10. canvas学习之柱状图