回答編集履歴

2

追記

2016/02/19 13:31

投稿

ozwk
ozwk

スコア13528

test CHANGED
@@ -1 +1,53 @@
1
1
  `outUserData[i]= new User();`を追加してください
2
+
3
+
4
+
5
+
6
+
7
+ ---
8
+
9
+
10
+
11
+ 初学者にありがちな勘違いなんですが、
12
+
13
+
14
+
15
+ ```java
16
+
17
+ Hoge[] HogeArray = new Hoge[N];
18
+
19
+ ```
20
+
21
+ みたいな表記は`Hoge[]`を`new`したのであって、中身の`Hoge`は`new`してません
22
+
23
+ (むしろそうでないと困る。)
24
+
25
+
26
+
27
+ したがって、配列だけ宣言した状態では
28
+
29
+
30
+
31
+ ```java
32
+
33
+ Hoge hoge_0;
34
+
35
+ Hoge hoge_1;
36
+
37
+ Hoge hoge_2;
38
+
39
+ ...
40
+
41
+
42
+
43
+ hoge_1.getName("hoge1");
44
+
45
+ ```
46
+
47
+ みたいなことやっているのとほぼ同じです。
48
+
49
+
50
+
51
+ 参照型の初期値はnullなので、
52
+
53
+ nullにアクセスしようとした:NullPointerExceptionが起きてます。

1

typo

2016/02/19 13:31

投稿

ozwk
ozwk

スコア13528

test CHANGED
@@ -1 +1 @@
1
- `outUserData[i]= new UserData();`を追加してください
1
+ `outUserData[i]= new User();`を追加してください