【问题标题】:Split ArrayList into another ArrayLists [duplicate]将 ArrayList 拆分为另一个 ArrayLists [重复]
【发布时间】:2013-10-24 00:09:55
【问题描述】:

如何将一个 ArrayList 拆分为多个 ArrayList。

ArrayList < Person>  pers = new ArrayList<Person>();

就像[Ram M sham m rani Fm]

我想把它拆分成[ Ram m] [sham m ] [Rani Fm]

【问题讨论】:

  • 分割的标准是什么?你有什么尝试?
  • 因为要分开获取名称列表和类别列表。如果我像上面那样拆分,那么我稍后会变成 [ram,sham,rani] 和 [m m fm] 的数组列表

标签: java


【解决方案1】:

看看ArrayUtils in the Commons。那里有一些方法可以帮助您获得一个干净的解决方案:

又名SubArray()

【讨论】:

    【解决方案2】:
    class Person{
        String name;
        String sex;
        public Person(String name, String sex) {
            super();
            this.name = name;
            this.sex = sex;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getSex() {
            return sex;
        }
        public void setSex(String sex) {
            this.sex = sex;
        }
        @Override
        public String toString() {
            return  name +" "+  sex ;
        }
    }
    
    public class SplitArrayList {
          public static void main(String[] args) {
               ArrayList < Person>  pers = new ArrayList<Person>();
               pers.add(new Person("Ram", "M"));
               pers.add(new Person("sham", "M"));
               pers.add(new Person("rani", "FM"));
               for (int i=0;i<pers.size();i++) {
                    List<Person> subList = pers.subList(i, i+1);
                    System.out.println(subList);                    
               }
           }
     }
    

    输出

    [Ram M]
    [sham M]
    [rani FM]
    

    【讨论】:

    • 得到类似 [ Ram m 的输出
    • int i=0;i
    • @KanagaveluSugumar 为什么 i+2 .....他需要子列表中的一个元素
    【解决方案3】:

    假设列表先包含姓名,然后包含性别,则可以进行以下操作。

       for(int i=0; i< pers.size(); i+=2){
                    List<Person> subList = peers.subList(i,i+2);
                    System.out.println(subList);
        }
    

    【讨论】:

      猜你喜欢
      • 2014-08-17
      • 2018-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-15
      • 2016-11-03
      相关资源
      最近更新 更多