如何在java中逐五读取数组列表元素

时间:2015-08-11 05:52:51

标签: java arraylist

以下java代码用于使用另一个ArrayListArrayList添加元素,之后将使用第二个ArrayList的元素来执行上述主题。阅读第二个ArrayList后,将删除ArrayList的读取元素。

Bean bean = new Bean();

String mailAddresses = bean.getMailAddresses();

List<String> emailList = new ArrayList<>(); //1st ArrayList

List<String> subList = new ArrayList<String>(); //2nd ArrayList

String[] split = mailAddresses.split(",");

for (int i = 0; i < split.length; i++) {
    String trim = split[i].trim();
    emailList.add(trim);
    System.out.println("Email List - " + emailList.get(i));    
}

if (emailList.isEmpty() == false) {
   for (int i = 0; i < emailList.size(); i++) {
        subList.add(emailList.get(i));
        System.out.println("Sub List - " + subList.get(i));
        System.out.println("Balance - " + subList.size() % 5); 

        if (subList.size() % 5 == 0){           
                break;
        }                
   }
}
// After processed some methods 
emailList.remove(subList.get(j));    

subList.clear();

这对我的实际预期不起作用。任何建议,将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:1)

Java List subList可用于获取范围内的子arraylist

List<String> sublist = emailList.subList(1, 5);

修改此功能,使用循环

读取5记录5记录
List<String> sublist = emailList.subList(i, i + 5);

示例代码

int sublength = 5;
for(int i = 0; i < list.size(); i = i + sublength) {
    List<String> sublist = list.subList(i, i + Math.min(sublength, list.size() - i));
}