Java对象,Map,List,Set数组等相互转换大全(详细讲解,附代码,讲解案例)(二)

简介: Java对象,Map,List,Set数组等相互转换大全(详细讲解,附代码,讲解案例)(二)

List和Array的转换


package com.example.面向对象1;
import java.util.*;
public class listdemo2 {
    public static void main(String[] args) {
        //  List转换为Array
        List<String> list1 = new ArrayList<>();
        list1.add("AAAA");
        list1.add("BBBB");
        list1.add("CCCC");
        list1.add("DDDD");
        String[] array = list1.toArray(new String[list1.size()]);
        for (String animal : array) {
            System.out.println(animal);
        }
        //Array转换为List
        String[] countries = {"AAAA", "BBBB", "CCCC", "DDDD"};
        List list2 = Arrays.asList(countries);
        System.out.println(list2);
    }
}



List转换为JSONArray,List转JSONArray


package com.example.democrud.democurd.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.List;
public class indexof {
    public static void main(String[] args) {
        //  List转换为JSONArray
        List<String> list1 = new ArrayList<>();
        list1.add("AAAA");
        list1.add("BBBB");
        list1.add("CCCC");
        list1.add("DDDD");
        String[] array = list1.toArray(new String[list1.size()]);
        for (String animal : array) {
            System.out.println(animal);
        }
        System.out.println("List转换为JSONArray");
        JSONArray array1= JSONArray.parseArray(JSON.toJSONString(list1));
        System.out.println("List转换为JSONArray"+array1);
        System.out.println("---------------------------------");
        //创建一个对象
        User user1 = new User("秦疆1号", 3, "男");
        User user2 = new User("秦疆2号", 3, "男");
        User user3 = new User("秦疆3号", 3, "男");
        User user4 = new User("秦疆4号", 3, "男");
        List<User> list = new ArrayList<User>();
        list.add(user1);
        list.add(user2);
        list.add(user3);
        list.add(user4);
            System.out.println(list);
        System.out.println("List转换为JSONArray");
        JSONArray array3= JSONArray.parseArray(JSON.toJSONString(list));
        System.out.println("List转JSONArray"+array3);
        System.out.println("---------------------------------");
        List<User> list2 = JSONObject.parseArray(array3.toJSONString(), User.class);
        System.out.println("JSONArray转List"+list2);
    }
}


运行结果:

AAAA
BBBB
CCCC
DDDD
List转换为JSONArray
List转换为JSONArray["AAAA","BBBB","CCCC","DDDD"]
---------------------------------
[User(name=秦疆1号, age=3, sex=男), User(name=秦疆2号, age=3, sex=男), User(name=秦疆3号, age=3, sex=男), User(name=秦疆4号, age=3, sex=男)]
List转换为JSONArray
List转JSONArray[{"sex":"男","name":"秦疆1号","age":3},{"sex":"男","name":"秦疆2号","age":3},{"sex":"男","name":"秦疆3号","age":3},{"sex":"男","name":"秦疆4号","age":3}]
---------------------------------
JSONArray转List[User(name=秦疆1号, age=3, sex=男), User(name=秦疆2号, age=3, sex=男), User(name=秦疆3号, age=3, sex=男), User(name=秦疆4号, age=3, sex=男)]


Map转换为List


package com.example.demo.controller.Demo;
import com.example.demo.entity.User;
import org.apache.commons.beanutils.BeanUtils;
import java.beans.BeanInfo;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class demoTest3 {
    public static void main(String[] args) {
        //  Map的Key值转换为List
        Map<Integer, String> map = new HashMap<>();
        map.put(1, "AAAA");
        map.put(2, "BBBB");
        map.put(3, "CCCC");
        map.put(4, "DDDD");
        List<Integer> list = new ArrayList<Integer>(map.keySet());
        System.out.println("\n******  Map的Key值转换为List ******");
        System.out.println("map.keySet()==>" + list);
        //  Map的Value值转换为List
        Map<Integer, String> map1 = new HashMap<>();
        map1.put(1, "AAAA");
        map1.put(2, "BBBB");
        map1.put(3, "CCCC");
        map1.put(4, "DDDD");
        List<String> list1 = new ArrayList<String>(map.values());
        System.out.println("\n******  Map的Value值转换为List ******");
        System.out.println("map.values()==>" + list1);
    }
}



Map转换为Set


package com.example.demo.controller.Demo;
import com.example.demo.entity.User;
import org.apache.commons.beanutils.BeanUtils;
import java.beans.BeanInfo;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
import java.lang.reflect.Method;
import java.util.*;
public class demoTest3 {
    public static void main(String[] args) {
        //  Map的Key值转换为List
        Map<Integer,String> map = new HashMap<>();
        map.put(1,"AAAA");
        map.put(2,"BBBB");
        map.put(3,"CCCC");
        map.put(4,"DDDD");
        Set<Integer> set = new HashSet<>(map.keySet());
        System.out.println("\n******  Map的Key值转换为Set ******");
        System.out.println("map.keySet()==>" + set);
       // Map的Value值转换为Set
        Map<Integer,String> map1 = new HashMap<>();
        map1.put(1,"AAAA");
        map1.put(2,"BBBB");
        map1.put(3,"CCCC");
        map1.put(4,"DDDD");
        Set<String> set1 = new HashSet<String>(map.values());
        System.out.println("\n******  Map的Value值转换为Set ******");
        System.out.println("map.values()==>" + set1);
    }
}


相关文章
|
5天前
|
存储 Java
判断一个元素是否在 Java 中的 Set 集合中
【10月更文挑战第30天】使用`contains()`方法可以方便快捷地判断一个元素是否在Java中的`Set`集合中,但对于自定义对象,需要注意重写`equals()`方法以确保正确的判断结果,同时根据具体的性能需求选择合适的`Set`实现类。
|
5天前
|
存储 Java 开发者
Java 中 Set 类型的使用方法
【10月更文挑战第30天】Java中的`Set`类型提供了丰富的操作方法来处理不重复的元素集合,开发者可以根据具体的需求选择合适的`Set`实现类,并灵活运用各种方法来实现对集合的操作和处理。
|
3天前
|
存储 Java 开发者
Java Set:无序之美,不重复之魅!
在Java的集合框架中,Set接口以其“无序之美”和“不重复之魅”受到开发者青睐。Set不包含重复元素,不保证元素顺序,通过元素的hashCode()和equals()方法实现唯一性。示例代码展示了如何使用HashSet添加和遍历元素,体现了Set的高效性和简洁性。
14 4
|
3天前
|
存储 算法 Java
为什么Java Set如此“挑剔”,连重复元素都容不下?
在Java的集合框架中,Set是一个独特的接口,它严格要求元素不重复,适用于需要唯一性约束的场景。Set通过内部数据结构(如哈希表或红黑树)和算法(如哈希值和equals()方法)实现这一特性,自动过滤重复元素,简化处理逻辑。示例代码展示了Set如何自动忽略重复元素。
11 1
|
3天前
|
存储 算法 Java
Java中的Set,你真的了解它的“无重复”奥秘吗?
在Java的广阔天地里,Set以其独特的“无重复”特性,在众多数据结构中脱颖而出。本文将揭秘Set的“无重复”奥秘,带你领略其魅力。Set通过哈希算法和equals()方法协同工作,确保元素不重复。通过一个简单的案例,我们将展示HashSet如何实现这一特性。
10 1
|
5天前
|
存储 Java 开发者
在 Java 中,如何遍历一个 Set 集合?
【10月更文挑战第30天】开发者可以根据具体的需求和代码风格选择合适的遍历方式。增强for循环简洁直观,适用于大多数简单的遍历场景;迭代器则更加灵活,可在遍历过程中进行更多复杂的操作;而Lambda表达式和`forEach`方法则提供了一种更简洁的函数式编程风格的遍历方式。
|
5天前
|
Java 开发者
|
5天前
|
算法 JavaScript 前端开发
使用 Set 类型实现数组的交集运算
【10月更文挑战第30天】使用 `Set` 类型实现数组的交集运算是一种常见且有效的方法,它为我们处理数据集合的运算提供了一种便捷的途径。通过合理地运用这种方法,我们可以轻松地实现数组的交集计算,并在各种编程任务中灵活运用。
|
9天前
|
存储 Java API
Java交换map的key和value值
通过本文介绍的几种方法,可以在Java中实现Map键值对的交换。每种方法都有其优缺点,具体选择哪种方法应根据实际需求和场景决定。对于简单的键值对交换,可以使用简单遍历法或Java 8的Stream API;对于需要处理值不唯一的情况,可以使用集合存储或Guava的Multimap。希望本文对您理解和实现Java中的Map键值对交换有所帮助。
13 1
|
17天前
|
存储 缓存 算法
Java 数组
【10月更文挑战第19天】Java 数组是一种非常实用的数据结构,它为我们提供了一种简单而有效的方式来存储和管理数据。通过合理地使用数组,我们能够提高程序的运行效率和代码的可读性。更加深入地了解和掌握 Java 数组的特性和应用,为我们的编程之旅增添更多的精彩。
30 4
下一篇
无影云桌面