规范之“用流中的Stream.Of(arr1,arr2)将两个集合合并”
案例:用流中的Stream.Of(arr1,arr2)将两个集合合并
    /**
     * 功能描述:
     *      两个对象集合添加到一起
     *      在用flatMap扁平化改为Stream<User>
     *      这样map中的item就是OccupyProduct对象了
     *      赋值后返回新对象,转为list
     *
     * @author wzw
     * @param
     */
    @Test
    public void testStreamOf() 
    {
        // 创建实验对象1
        User user1 = new User();
        user1.setId(1);
        
        // 创建实验对象2
        User user2 = new User();
        user2 .setId(2);
        // 创建实验集合对象1
        List<User> users1= Arrays.asList(user1 );
        // 创建实验集合对象2
        List<User> users2 = Arrays.asList(user2 );
        
        // 两个对象集合添加到一起,在用flatMap扁平化改为Stream<User>, 
        // 这样map中的item就是User对象了,赋值后返回新对象,转为list
        List<User> user= Stream.of(users1, users2)
                .flatMap(Collection::stream).map(item -> {
                    User user= new User();
                    user.setId(item.getId());
                    user.setName("wzw");
                    return user;
                }).collect(Collectors.toList());
        // 打印
        System.out.println("user = " + user);
    }
结果
user = [
    user(id=1,name=wzw), 
    user(id=2,name=wzw )
]
案例:用流中的Stream.Of(arr1,arr2)将两个数组合并
将两个int[] 转为List<Integer>
@Test public void suanfa42() { int[] a = {1, 2, 3, 4, 4}; int[] b = {2, 3, 6};// 合并两个数组并排序 List<Integer> integers = Stream.of(Arrays.stream(a).boxed(), Arrays.stream(b).boxed()) .flatMap(item -> item).sorted().collect(Collectors.toList()); }
结果图

    * 博客文章部分截图及内容来自于学习的书本及相应培训课程,仅做学习讨论之用,不做商业用途。
* 如有侵权,马上联系我,我立马删除对应链接。
* 备注:王先生
* 我的网易邮箱:wzw_1314_520@163.com
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号