回答編集履歴

1

修正

2020/04/17 14:06

投稿

gentaro
gentaro

スコア8949

test CHANGED
@@ -1,4 +1,18 @@
1
- こういうことです
1
+ なん回答後に質問文が編集されてたけど
2
+
3
+
4
+
5
+ > boolean isMan = isMan(args[1]);の使い方を理解したい。
6
+
7
+ コマンドライン引数が0の時エラーが表示されないようにしたい。
8
+
9
+
10
+
11
+ `boolean isMan = isMan(args[1])`を使ってないのがご不満だったんだろうか。
12
+
13
+
14
+
15
+ 「使い方を理解」の部分が、逆に今どう理解できないのかわからないけど、とりあえずその仕様を満たすなら
2
16
 
3
17
 
4
18
 
@@ -12,6 +26,10 @@
12
26
 
13
27
  public static void main(String[] args) {
14
28
 
29
+ // 引数が2つ指定されてない、もしくは第二引数が"M"か"F"以外の場合はメッセージをだして終わる。
30
+
31
+ // これで「コマンドライン引数が0の時エラーが表示されない」ようになる。
32
+
15
33
  if (args.length != 2 || (!args[1].equals("M") && !args[1].equals("F"))) {
16
34
 
17
35
  System.out.println("コマンドラインで、氏名と性別を引き渡してください。");
@@ -24,9 +42,19 @@
24
42
 
25
43
  String name = args[0];
26
44
 
27
- boolean isMale = args[1].equals("M");
45
+ boolean isMan = isMan(args[1]); // こうしないとダメってこと?
28
46
 
47
+ // (isMan ? "男性" : "女性")でisMan = trueなら"男性"、それ以外は"女性"と表示
48
+
29
- System.out.println("氏名:" + name + "、性別:" + (isMale ? "男性" : "女性"));
49
+ System.out.println("氏名:" + name + "、性別:" + (isMan ? "男性" : "女性"));
50
+
51
+ }
52
+
53
+
54
+
55
+ public static boolean isMan(String isMan) {
56
+
57
+ return isMan.equals("M");
30
58
 
31
59
  }
32
60