使用命名对象迭代数组

时间:2017-10-13 11:59:26

标签: java arrays object foreach

我必须迭代3个三角形(Dreieck x,y,z,它们必须具有这些名称),我希望它们在一个阵列中。

我写了一个方法"检查如果有效"检查是否可以构造这些三角形。如果可能,它应该返回" true"。我已经编写了一个foreach循环,我希望对于数组中的每个三角形dreiecke它应该打印" true"如果有可能构建它和" false"如果不可能的话。在我的情况下,它会抛出一个NullPointerException

初始化数组有什么问题吗?

public class DreieckTest {
public static void main(String[] args) {
    Dreieck[] dreiecke = new Dreieck[3];

    //triangle
    Dreieck x = new Dreieck(1, 7, 5);
    Dreieck y = new Dreieck(3, 4, 5);
    Dreieck z = new Dreieck(5, 3, 3);

    for(Dreieck dreieck: dreiecke) {
        System.out.println(dreieck.istGültig());
    }   
}   
}

这是Dreieck班:

public class Dreieck {
// attribute
private int a;
private int b;
private int c;

public Dreieck(int a, int b, int c) {
    this.a = a;
    this.b = b;
    this.c = c;
}

//check if possible
public boolean istGültig() {
    if (a + b > c ^ a + c > b ^ b + c > a) {
        return true;
    } else {
        return false;
    }
}

1 个答案:

答案 0 :(得分:3)

使用此

dreiecke[0]= new Dreieck(1, 7, 5);
dreiecke[1] = new Dreieck(3, 4, 5);
dreiecke[2] = new Dreieck(5, 3, 3);