Javaの新規登録システムについて
Javaで本の新規登録システムを作成しているのですがなかなか思うように進まずに困っているので質問させていただきました。
内容としましては
1、
Register:R
Exit:E
と表示されているところにRを入力すると本の登録が開始する
2、
順にname?(タイトル)、ISBN?(ISBN番号)、author?(著者)、the publisher?(出版社)、Year of issue?(発行年)が表示されるので、順に入力していく。
3、
それらの情報をリスト構造に入力した後、また
Register:R
Exit:E
と表示されるので、Rを入力したらもう一冊登録へ、Eを押したら終了する
という構成のシステムを構成しているのですが以下のようなプログラムを作っていた時2つの問題点にあたりました
発生している問題・エラーメッセージ
1、Rを押してもEを押してもその後の反応がない 2、Rを押したら本の一覧情報のリストが追加されていくようなものを作っていきたいがこれで合っているのかがわからない。 ArrayListの2次元配列を作成することも検討したがこんがらがってしまいわからなくなってしまった。
該当のソースコード
Java
1import java.util.ArrayList; 2import java.util.Scanner; 3 4class BookList{ 5 public static void main(String[] args){ 6 7 Scanner scan = new Scanner(System.in); 8 9 ArrayList ToRead = new ArrayList(); 10 String[] b = new String[5]; 11 12 13 System.out.println("Register:R"); 14 System.out.println("Exit:E"); 15 16 String str = scan.next(); 17 18 while(str!="E"){ 19 if(str=="R"){ 20 System.out.println("name?"); 21 String n = scan.next(); 22 23 System.out.println("ISBN?"); 24 String i = scan.next(); 25 26 System.out.println("author?"); 27 String a = scan.next(); 28 29 System.out.println("the publisher?"); 30 String t = scan.next(); 31 32 System.out.println("Year of issue?"); 33 String y = scan.next(); 34 35 b[0]=n; 36 b[1]=i; 37 b[2]=a; 38 b[3]=t; 39 b[4]=y; 40 41 ToRead.add(a); 42 43 44 System.out.println("Registered"); 45 System.out.println(); 46 47 System.out.println("Register:R"); 48 System.out.println("Exit:E"); 49 50 str = scan.next(); 51 } 52 } 53 } 54}
補足情報(FW/ツールのバージョンなど)
今回質問するのが初めてなので何か至らないこと、失礼なこと等ありましたら申し訳ありません。
回答2件
あなたの回答
tips
プレビュー