ForEach的替代品?

时间:2013-01-29 01:00:13

标签: java foreach while-loop cycle

我的课程考试具有以下属性:

package logic;

import java.util.ArrayList;

public class Exam {

    private int number;
    private Professor professor;
    private ArrayList<Question> questions = new ArrayList<Question>();
    private ArrayList<Test> tests = new ArrayList<Test>();

    ... // getters, setters, etcetera

}

我的问题是关于构造函数:

public Exam(Professor professor, ArrayList<Question> questions) {

    this.professor = professor;

    for(Question question : questions) // <---
        this.questions.add(question); // <---

}

为了添加问题,还有foreach的替代方案吗?例如,使用一段时间或另一个周期?怎么会这样?我一直在尝试,但无法使其发挥作用。

3 个答案:

答案 0 :(得分:3)

一个简单的List#addAll()怎么样?

this.questions.addAll(questions);

注意,如果您解释为什么您的当前代码不适合您,并且 它如何失败(编译错误?运行时异常?还有其他什么?)会有所帮助

答案 1 :(得分:2)

  1. Constructor

    this.questions = new ArrayList(questions);

  2. List#addAll

    this.questions.addAll(问题);

  3. 分配

    this.questions = questions;

答案 2 :(得分:1)

// assign the passed ArrayList to the class attribute
this.questions = questions;