zoukankan      html  css  js  c++  java
  • java数组与集合互转以及利用set去重

    int result=0;
            //定义可以去重的set集合
            Set<String> idSet = new HashSet<String>();
            if(users.length>0){
                List    list=Arrays.asList(users);
                for(IUserObject user:users){
                    idSet.add(user.getUserId()+user.getUserName()+user.getUserRemoteIP());
                }
                  result= idSet.size(); 
            }
            return result;

    注意点:

    set去重时对于自定义的对象如果其对象属性有一个相同即为一个对象处理

    list利用迭代器进行对象相同处理(按照所有相同属性进行判断但必须该定义的对象重写了toString方法才可使用contains方法)

    IUserObject[] result=null;
            if(users.length>0){
                 List infolist = new ArrayList();
                 List    list=Arrays.asList(users); 
                 Iterator it = list.iterator();
                 while (it.hasNext()) {
    
                     IUserObject obj = (IUserObject) it.next();
    
                        if(!infolist.contains(obj)){
                            infolist.add(obj);
                        }
                 }
                 result=(IUserObject[]) infolist.toArray(new IUserObject[infolist.size()]);
            }
            return result;

    数组转成集合利用asList方法

    String[] array = new String[] {"zhu", "wen", "tao"};
        // String数组转List集合
        List<String> mlist = Arrays.asList(array);
        // 输出List集合
        for (int i = 0; i < mlist.size(); i++) {
            System.out.println("mlist-->" + mlist.get(i));
        }
    

    将list转成数组

    1、Object[] toArray();

     用法1
            List<String>  stringList2 = new ArrayList<>();
            stringList2.add("A");
            stringList2.add("B");
            stringList2.add("C");
            Object[] objectArray  = stringList2.toArray();

    2、<T> T[] toArray(T[] a);

    List<String> stringList = new ArrayList<>();
            stringList.add("A");
            stringList.add("B");
            stringList.add("C");
            String[] stringArray = stringList.toArray(new String[stringList.size()]);
    

      

    注意事项:

    有些数据类型是不能强转的所以必须先进行数组类型定义在进行转换eg:数组不能强转成String[]数组;除非这个数组初始化的时候就指向了String[]数组

    我的微信公众号大家可以关注下欢迎留言,认识一下交个朋友哈!

  • 相关阅读:
    IDEA设置类级注释和方法级注释
    简单的后台管理系统demo(基于Spring Boot)
    MyBatis中if test传入0值时不识别
    MySQL插入时间数据与系统时间差8小时
    MySQL按字符串中部分数值排序
    二叉查找树
    40个提升网站用户体验的jQuery插件推荐 40个提升网站用户体验的jQuery插件推荐
    纯CSS3实现的8种Loading动画效果
    Web前端框架汇总
    最大公约数 最小公倍数
  • 原文地址:https://www.cnblogs.com/wwwcf1982603555/p/11688116.html
Copyright © 2011-2022 走看看