質問するログイン新規登録

回答編集履歴

1

修正

2020/04/17 14:06

投稿

gentaro
gentaro

スコア8947

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