public class Test {
public class Vertex{
int layer = 0;
int weight = 0;
}
public class NetWork{
Vertex [][]arcs;
NetWork(){
arcs[0][1].weight = 13;
arcs[0][2].weight = 4;
arcs[1][2].weight = 2;
arcs[1][3].weight = 9;
arcs[2][1].weight = 10;
arcs[2][4].weight = 8;
arcs[3][2].weight = 9;
arcs[3][4].weight = 1;
arcs[3][5].weight = 7;
arcs[4][5].weight = 9;
}
}
public void Show(){
NetWork a = new NetWork();
for(int i = 0;i<6;++i){
for(int j = 0;j<6;++j){
System.out.print(a.arcs[i][j].weight);
}
System.out.println("");
}
}
public static void main(String args[]){
Test p = new Test();
p.Show();
}
}运行后出现Exception in thread "main" java.lang.NullPointerException
at Test$NetWork.<init>(Test.java:9)
at Test.Show(Test.java:22)
at Test.main(Test.java:32)
请问是神马情况
public class Vertex {
int layer = 0;
int weight = 0;
} public class NetWork {
Vertex[][] arcs = new Vertex[6][6]; {
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 6; j++) {
arcs[i][j] = new Vertex();
}
}
} NetWork() {
arcs[0][1].weight = 13;
arcs[0][2].weight = 4;
arcs[1][2].weight = 2;
arcs[1][3].weight = 9;
arcs[2][1].weight = 10;
arcs[2][4].weight = 8;
arcs[3][2].weight = 9;
arcs[3][4].weight = 1;
arcs[3][5].weight = 7;
arcs[4][5].weight = 9;
}
} public void Show() {
NetWork a = new NetWork();
for (int i = 0; i < 6; ++i) {
for (int j = 0; j < 6; ++j) {
System.out.print(a.arcs[i][j].weight);
}
System.out.println("");
}
} public static void main(String args[]) {
Test p = new Test();
p.Show();
}
}