zoukankan      html  css  js  c++  java
  • java8 list、map遍历以及反射

         //新建list
    
            List<User> userList = new ArrayList<>();
            User user = new User();
            user.setId("user-01");
            user.setName("张三");
            user.setAge(18);
    
            User user1 = new User();
            user1.setId("user-02");
            user1.setName("李四");
            user1.setAge(19);
    
    
            User user2 = new User();
            user2.setId("user-03");
            user2.setName("王五");
            user2.setAge(28);
    
            userList.add(user);
            userList.add(user1);
            userList.add(user2);
            
            //遍历list
            userList.forEach(s->{
                System.out.println("被遍历的list"+s.getName());
            });

    //list去重复
    userList.stream().distinct().collect(Collector.toList());

    //通过stream把list转为map Map
    <String, User> collect = userList.stream().collect(Collectors.toMap(User::getId, Function.identity(), (o1, o2) -> o2)); System.out.println(collect.toString()); //利用@Builder 注解一次性给对象赋值 User userBuild =User.builder().age(1).Id("build-01").name("buildName").build(); System.out.println(userBuild.toString()); //遍历map collect.forEach((k,v)->{ if(k.equals("user-01")){ v.setAge(100); } }); System.out.println("遍历之后的"+collect.toString()); //反射 StringBuffer saveIdBuffer = new StringBuffer(); collect.forEach((k,v)->{ try {
    //capitalize 首字母大写 Method method
    = v.getClass().getMethod("get" + StringUtils.capitalize("id")); try { saveIdBuffer.append(method.invoke(v)); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } } catch (NoSuchMethodException e) { e.printStackTrace(); } }); System.out.println("通过反射得到的所有id"+saveIdBuffer);
  • 相关阅读:
    java操作生成jar包 和写入jar包
    jboss配置jndi连接池
    windows 域的LDAP查询相关举例
    LDAP error Code 及解决方法
    HDU 6417
    CF1299D Around the World
    codechef Chef and The Colored Grid
    Educational Codeforces Round 82 (Rated for Div. 2)
    CF1237F Balanced Domino Placements
    CF1254E Send Tree to Charlie
  • 原文地址:https://www.cnblogs.com/MagicAsa/p/11647722.html
Copyright © 2011-2022 走看看