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

質問編集履歴

2

質問を少しまとめてみました。

2020/10/10 11:58

投稿

cretter
cretter

スコア91

title CHANGED
File without changes
body CHANGED
@@ -3,8 +3,8 @@
3
3
  これは質問用に簡潔に作ったコードです。
4
4
  今、`cl1.sample();`が実行されているとして`cl1.sample();`の`if`があります。
5
5
  そこで`sc.nextInt()`で2を入力したとします。
6
- そうしたら`cl1.sample();`が終了して`cl2.sample();`が実行されるようにしたいです。
6
+ そうしたら`cl1.sample();`が終了して`while`に戻るようにしたいです。
7
- 初めは`System.exit(0);`を使おうとしていましたがそうすると`cl2.sample();`が実行されなくなってしまいます。
7
+ 初めは`System.exit(0);`を使おうとしていましたがそうすると`while`が実行されなくなってしまいます。
8
8
  `cl1.sample();`だけ終了するためにはどうすればいいかを教えてください。
9
9
  それかその方法について詳しく載っているサイトのURLを教えてください。
10
10
 
@@ -18,41 +18,28 @@
18
18
  {
19
19
  public static void main(String[] args)
20
20
  {
21
- var cl1 = new test0301_sample01();
21
+ var cl1 = new sample01();
22
- var cl2 = new test0301_sample02();
23
- var sc = new Scanner(System.in);
24
22
  while(true){
25
23
  System.out.println("restart");
26
- cl1.sample();
24
+ cl1.sample01();
27
- cl2.sample();
28
- }
29
25
  }
30
26
  }
31
27
  }
32
- class test0301_sample01
28
+ class sample01
33
29
  {
34
- void sample()
30
+ void sample01()
35
31
  {
36
32
  var sc = new Scanner(System.in);
37
33
  if(sc.nextInt()==1){
34
+ System.out.println("sc.nextInt() = 1が実行されました");
38
- //色々と
35
+ System.out.println("if_end");
39
36
  }else{
37
+ System.out.println("sc.nextInt() = 1以外が実行されました");
40
- //色々と
38
+ //ここで処理を止めて、上にあるwhileに戻りたい
39
+ System.out.println("if_end");
41
40
  }
42
41
  }
43
42
  }
44
- class test0301_sample02
45
- {
46
- void sample()
47
- {
48
- var sc = new Scanner(System.in);
49
- if(sc.nextInt()==1){
50
- //色々と
51
- }else{
52
- //色々と
53
- }
54
- }
55
- }
56
43
  ```
57
44
  ### 補足情報(FW/ツールのバージョンなど)
58
45
  java jdk-14.0.2

1

質問の追加

2020/10/10 11:58

投稿

cretter
cretter

スコア91

title CHANGED
File without changes
body CHANGED
@@ -7,6 +7,9 @@
7
7
  初めは`System.exit(0);`を使おうとしていましたがそうすると`cl2.sample();`が実行されなくなってしまいます。
8
8
  `cl1.sample();`だけ終了するためにはどうすればいいかを教えてください。
9
9
  それかその方法について詳しく載っているサイトのURLを教えてください。
10
+
11
+ 追伸:
12
+ 初心者なのであっていないかもしれませんがコンストラクタだけを終了させる方法と同義だと思います。
10
13
  ### 該当のソースコード
11
14
 
12
15
  ```java