java
コマンド ラインからのユーザー入力を処理するプログラムを実装しようとしていました。問題はAlgorithms
書籍 ( sedgewick
)に記載されていました。
1.1.21 標準入力から各行に名前と 2 つの整数を含む行を読み込み、printf() を使用して、名前、整数、およびその除算の結果の列を含むテーブルを出力するプログラムを作成します。小数点以下第 3 位までの精度で、1 秒ごとに表示されます。このようなプログラムを使用して、野球選手の打率や学生の成績を集計できます。
これを次のように実装しようとしました..しかし、ユーザー入力を保存して印刷できるようにすることに固執しprintf()
ています..ユーザー入力を取得するにはスキャナーが適切だと思いました..それでも、入力を保存できないようです後で使用します。
クラスStack
はセジウィックの本からのものです。
これを正しくする方法はありますか?
Scanner input = new Scanner(System.in);
Stack st = new Stack();
while(input.hasNext()){
String tkn = input.next();
st.push(tkn);
if (st.size()==3){
int y = Integer.parseInt((String)st.pop());
int x = Integer.parseInt((String)st.pop());
String name = (String)st.pop();
System.out.println("name="+name+",x="+x+",y="+y);
}
}