質問編集履歴
2
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,18 @@
|
|
1
|
-
|
1
|
+
初心者な為、この問題が実行結果として何故答えがCになるのかが分かりません。
|
2
2
|
|
3
|
+
|
4
|
+
|
5
|
+
一つ一つ解説していただけると助かります。これは、初期化をしてないけど、自動的にデフォルト値が入るため初期化されるパターンですか?
|
6
|
+
|
7
|
+
又もしその場合、どこを見れば、デフォルト値が入り初期化されていると分かるのでしょうか?
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
Javaプログラマ Silver SE11
|
14
|
+
|
3
|
-
P.6
|
15
|
+
P.61の変数と配列の、問題2-7です。
|
4
16
|
|
5
17
|
|
6
18
|
|
@@ -10,54 +22,44 @@
|
|
10
22
|
|
11
23
|
1. public class Main {
|
12
24
|
|
13
|
-
2.
|
25
|
+
2. public static void main(String[]args) {
|
14
26
|
|
15
|
-
3.
|
27
|
+
3. int[]a=new int[5];
|
16
28
|
|
17
|
-
4.
|
29
|
+
4. boolean[]b= new boolean[5];
|
18
30
|
|
19
|
-
5.
|
31
|
+
5. String[]c= new String[5];
|
20
32
|
|
21
|
-
6.
|
33
|
+
6. System.out.println("a[0]=" +a[0]+
|
22
34
|
|
23
|
-
|
35
|
+
7. "b[0]="+b[0]+
|
24
36
|
|
25
|
-
|
37
|
+
8. "c[0]="+c[0]);
|
26
38
|
|
27
|
-
|
39
|
+
9. }
|
28
40
|
|
29
|
-
9. }
|
30
|
-
|
31
|
-
10.
|
41
|
+
10.}
|
32
42
|
|
33
43
|
|
34
44
|
|
35
|
-
コンパイル、実行した結果として正しいものは
|
45
|
+
コンパイル、実行時した結果として正しいものは次のどれですか?一つ選択してください。
|
36
|
-
|
37
|
-
A.B.C.Dと四択あるうち、
|
38
46
|
|
39
47
|
|
40
48
|
|
49
|
+
A. コンパイルエラー
|
50
|
+
|
51
|
+
B. 実行時エラー
|
52
|
+
|
41
|
-
C.
|
53
|
+
C. a[0]=0 b[0]=false c[0]=null
|
54
|
+
|
55
|
+
D. a[0]=0 b[0]=true c[0]=null
|
56
|
+
|
57
|
+
E. a[0]=0 b[0]=true c[0]=
|
58
|
+
|
59
|
+
F. コードは実行されるが、何も出力されない
|
42
60
|
|
43
61
|
|
44
62
|
|
63
|
+
解答 C.
|
45
64
|
|
46
|
-
|
47
|
-
何故これは実行結果として、このCの結果になるのでしょうか?
|
48
|
-
|
49
|
-
解説には、問題のコードでは配列を作成したあと要素の代入は行っていません。しかし配列内はデフォルト値で初期化されるためエラーにはなりません。
|
50
|
-
|
51
|
-
int型の配列は0、boolean型の配列はfalse
|
65
|
+
問題のコードでは配列を作成したあと要素の代入は行っていません。しかし、配列内はデフォルト値で初期化されるためエラーにはなりません。int型の配列は0、boolean型の配列はfalse、参照型であるString型の配列はnullで初期化されるため選択肢Cが正しいです。
|
52
|
-
|
53
|
-
とあります。
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
この、特に分からないのが、boolean 型の配列はfalseという箇所です。
|
58
|
-
|
59
|
-
何故falseになるのですか?
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
詳しく解説して頂けると助かります。
|
1
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,13 +12,15 @@
|
|
12
12
|
|
13
13
|
2. public static void main(String[] args) {
|
14
14
|
|
15
|
-
3. int[]a=new
|
15
|
+
3. int[]a=new int[5];
|
16
16
|
|
17
17
|
4. boolean[]b=new boolean[5];
|
18
18
|
|
19
19
|
5. String[]c=new String[5];
|
20
20
|
|
21
|
+
6.
|
22
|
+
|
21
|
-
|
23
|
+
System.out.println("a[0]=" +a[0]+
|
22
24
|
|
23
25
|
7. "b[0]="+b[0]+
|
24
26
|
|
@@ -42,6 +44,20 @@
|
|
42
44
|
|
43
45
|
|
44
46
|
|
45
|
-
何故これは、
|
47
|
+
何故これは実行結果として、このCの結果になるのでしょうか?
|
48
|
+
|
49
|
+
解説には、問題のコードでは配列を作成したあと要素の代入は行っていません。しかし配列内はデフォルト値で初期化されるためエラーにはなりません。
|
50
|
+
|
51
|
+
int型の配列は0、boolean型の配列はfalse,参照型であるString型の配列はnullで初期化されるため選択肢Cが正しいです。
|
52
|
+
|
53
|
+
とあります。
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
この、特に分からないのが、boolean 型の配列はfalseという箇所です。
|
58
|
+
|
59
|
+
何故falseになるのですか?
|
60
|
+
|
61
|
+
|
46
62
|
|
47
63
|
詳しく解説して頂けると助かります。
|