入門動画のソースコードの意味が分かりません。
投稿者の人にコメントをしてみましたが返信がないので質問させていただきました。
処理している内容を教えていただければ幸いです。
わからない内容
inputCommand() の中にある return(inputCommand()); がどのような処理をしているのかがわかりません。
putCommand() の中にある int c = inputCommand(); がどのような処理をしているのかがわかりません。
public class part01 { static String name = "すけさん"; static int lv = 30; //プレイヤーのレベル public static void main(String[] args) throws java.io.IOException { putJyosyou(); //序章を表示 putCommand(); //コマンドを表示 if(lv<40){ //レベルが40未満の場合 putGameOver(); //ゲームオーバー画面を表示 }else{ //レベルが40以上の場合 putGameClear(); //ゲームクリアの画面を表示 } } public static void putCommand() throws java.io.IOException { System.out.println("1. 魔王を倒しに行く"); System.out.println("2. 修行する"); int c = inputCommand(); if(c=='1'){ System.out.println("魔王が現れた!"); } else if(c=='2'){ lv += 5; System.out.println("レベルが"+lv+"になった"); putCommand(); } } public static int inputCommand() throws java.io.IOException { int c = System.in.read(); if(c==10 || c==13){ return(inputCommand()); } return(c); } /** * 序章を表示します */ public static void putJyosyou() { System.out.println("魔王が" + "世界を滅ぼそうとしています。"); System.out.println(name + "はレベル" + lv + "のツワモノです。"); } /** * ゲームオーバー画面を表示します */ public static void putGameOver() { System.out.println(name + "は魔王に敗れましたorz"); System.out.println("GAME OVER"); } /** * ゲームクリア画面を表示します */ public static void putGameClear() { String s0 = name + "は魔王を倒しました!"; put(s0); System.out.print("レベル" + lv); if(lv>200){ put("なので魔王はゴミでした。www"); }else if(lv>120){ put("なので魔王は弱すぎでした。"); }else if(lv>80){ put("なので余裕でした。"); }else if(lv>50){ put("でしたが倒せました。"); }else{ put("でしたので苦戦しました。"); } put("GAME CLEAR!"); } /** * 引数で指定された文字列を表示します * * @param str 表示対象の文字列 */ public static void put(String str) { System.out.println(str); } }
ソースコード元
ソースコードの詳細
回答1件
あなたの回答
tips
プレビュー