1
私は2つのJavaクラスを持っています。スケジュールはdeadline
と呼ばれるジョブの配列を使用するメインクラスです。私は配列に何かを置くことに問題があります。私はテキストファイル(それは正常に動作する)からデータを読み取り、特定のデータをdeadline
に挿入するforループを持っています。配列に挿入するときはいつでも、NullPointerException
が得られるので、私はうまくdeadline
を作成しません。 (...
のコードは明らかに私が実際にコード化したものではありませんが、それはまだ同じ状況です。)クラス配列内のNullPointer
私はJavaでコード化して以来、しばらくしていましたので、しかし、私は本当に何ができるかは分かりません...あなたが与えることができる任意の助けに感謝します。あなたはクラスのメンバーdeadline
が、ローカル1を初期化しないように
public class Schedule {
private Job []deadline;
Schedule (int n){
Job[] deadline = new Job[n];
}
...
int n = 7;
Schedule schedule = new Schedule(n);
deadline[0] = new Job("A",3,40); // This line won't compile. NullPointerException
}
public class Job {
private String name;
private int deadline;
private int profit;
Job(String n, int d, int p){
name = n;
deadline = d;
profit = p;
}
}
つまり、クラスによってデッドラインが宣言されるため、コンストラクタ内で再宣言する必要はありません。これにより、実際にはコンストラクタ内にのみ存在する新しい変数(同じ名前)が作成されます。 – jahroy
* facepalm *私はそれがそんなに馬鹿だと思った。ありがとう。それは今働きます! –
私たちすべてに起こった:)私は助けることができてうれしい。 – MByD