2017-09-13 7 views
1

現在、1を入力すると、「スタンバイモードが有効」で「スタンバイモードが無効」と出力され、5分ごとに出力が「スタンバイモードが無効」にループします。どのように私は出力のみ、「スタンバイモードが有効になっている」ことができますだけでなく、私がここで入力1.ループからの出力停止

を持っているコードがされた後、出力一度だけ5分で「スタンバイモードは無効になっています」:

import java.util.Scanner; 
import java.util.Timer; 
import java.util.TimerTask; 

public class StandbyMode { 

    public static void main(String[] args) { 
    Scanner scanner = new Scanner(System.in); 
    System.out.println("Standby Mode"); 
    System.out.println("Press 1 for Standby mode"); 
    int selectedOption = scanner.nextInt(); 
    if(selectedOption == 1){ 
     System.out.println("Standby mode is enabled"); 

    }else { 
     System.out.println("Invalid input"); 

    } 
    Timer t = new Timer(); 
    t.schedule(new TimerTask() { 
     @Override 
     public void run() { 
      System.out.println("Standby Mode disabled"); 
     } 
    }, 0, 300000); 
    scanner.close(); 
    } 

} 

答えて

0

することができます

if(selectedOption == 1){ 
    Timer t = new Timer(); 
    t.schedule(new TimerTask() { 
     @Override 
     public void run() { 
      System.out.println("Standby mode is enabled."); 
     } 
    }, 0, 300000); 
} else { 
    System.out.println("Standby mode is disabled."); 
} 

注:お使いのデフに無効モードと、無効な出力の間に引かれた線がなければならない可能モードのためのあなたのif文の中でタイマーを使います多少のようなことができinition:(コメントの後)

else if(selectedOption==2) { 
    System.out.println("Standby mode is disabled."); 
} else { 
    System.out.println("Invalid input"); 
} 

編集 ::モードを交互にするために、あなたのようにタイマーによって表示されるメッセージを切り替えるためにフラグを使用することができます。

if (selectedOption == 1) { 
    Timer t = new Timer(); 
    t.schedule(new TimerTask() { 
     boolean flag = true; 

     @Override 
     public void run() { 
      if (!flag) { 
       System.out.println("Standby Mode Disabled"); 
      } else { 
       System.out.println("Standby Mode Enabled"); 
      } 
      flag = !flag; 
     } 
    }, 0, 3); 
} else { 
    System.out.println("Invalid input"); 
} 
+0

"スタンバイモードが有効"で、 "スタンバイモードが無効"の出力が得られませんでした – user8605033

+0

@ user8605033この2つの間で出力を交互に変更するつもりですか?私は彼らが一緒に異なるモードであるという前提の下にいました。 – nullpointer

+0

"スタンバイモードが有効"と "スタンバイモードが無効"(5分後)の両方を出力したかったのです。私の質問が明確でない場合にはお詫び – user8605033

関連する問題