ArrayList中的Java对象方法

时间:2017-03-24 13:02:44

标签: java string arraylist methods indexing

我已经搜索了一些答案,但找不到我想要的答案。如果我有一个ArrayList“school”并且在ArrayList中我有几个“学生”对象。如何访问每个单独的ArrayList条目以调用每个学生对象上的方法?

例如,我尝试过:

String input = "your input";

Pattern pattern = Pattern.compile("(\\d+)-(\\w+)");
Matcher matcher = pattern.matcher(input);

List<String> reslt = new ArrayList<>();
while (matcher.find()) {
    //check first group
    if (matcher.group(1) != null) {
        System.out.println("match");
    }else{
        System.out.println("not match");
    }
    //check second group
    if (matcher.group(2) != null) {
        System.out.println("match");
    }else{
        System.out.println("not match");
    }
}

但它似乎不起作用。

在学校里面,ArrayList是我通过这个创建的几个学生对象。

System.out.println(school[0].getStudentName());

4 个答案:

答案 0 :(得分:2)

使用Java5增强版for循环:

for (Student student : school) {
    System.out.println(student.getStudentName());
}

使用迭代器:

Iterator<Student> studentIterator = school.iterator();
while (studentIterator.hasNext()) {
    System.out.println(studentIterator.next().getStudentName());
}

使用索引元素访问(在ArrayList上很好,但不一定在其他List实现上):

for (int i = 0; i < school.size(); i++) {
    System.out.println(school.get(i).getStudentName());
}

如果你有一个数组,而不是一个ArrayList,那么使用数组索引访问:

for (int i = 0; i < school.length; i++) {
    System.out.println(school[i].getStudentName());
}

或者将其包装为列表并按上述方式迭代:

for (Student student : Arrays.asList(school)) {
    System.out.println(student.getStudentName());
}

答案 1 :(得分:0)

你应该使用这样的东西

$message->Attach($pdf);

答案 2 :(得分:0)

使用[]无法访问ArrayList中的条目。您必须使用get(int index)方法。所以,你应该这样做。

System.out.println(school.get(0).getStudentName());

答案 3 :(得分:0)

ArrayLists没有检索数组所做元素的括号方式。 ArrayLists是一个具有方法的Java类(因此也是对象)。以与其他对象相同的方式访问方法。

尝试:

System.out.println(school.get(0).getStudentName());

如果您想要所有学生的姓名,请尝试在其他答案中表达的for循环。