java初心者です。
javaで「数字をコンソールに入力し、入力された数字を足した結果を表示する」というものを作っています。数字の入力は「exit」と入力するまで行いたいのですが、以下のコードを考えて打ってみましたがうまくいきません。
調べても改善箇所がわからず、知恵をお借りしたいです
public static void main(String[] args) {
int sum = 0;
int num;
Scanner sc = new Scanner(System.in); System.out.println("数字を入力してください。終了する場合はexitと入力してください。"); num = sc.nextInt(); Object str=null; while(true) { sum += num; System.out.println( sum ); System.out.println("数字を入力してください。終了する場合はexitと入力してください。"); num = sc.nextInt(); str = sc.nextLine(); if (!str.equals("exit")) { break; } System.out.println("終了します。"); } }
}
自分がやりたいこと
数字を入力してください。終了する場合はexitと入力してください
キーボード入力(例:1)
数字の足し算の結果(例:1)
数字を入力してください。終了する場合はexitと入力してください
キーボード入力(例:10)
足し算の結果(例:11)
数字を入力してください。終了する場合はexitと入力してください
キーボード入力(例:exit)
終了します
実際の結果
数字を入力してください。終了する場合はexitと入力してください
キーボード入力(例:1)
数字の足し算の結果(例:1)
数字を入力してください。終了する場合はexitと入力してください
キーボード入力(例:10)
(勝手に終了)
無限ループをbreakで抜けることはわかりますが、うまくいきません。
ご教授のほどお願いします。