演習(一人しりとり)の回答例

出典: CourseWiki

public class Shiritori1 {
    public static void main(String[] args) {
        System.out.println("しりとりをしましょう(して下さい?).");
        while (true) {
            System.out.print("単語: ");
            String word = Keyboard.stringValue();
            if (word.length() == 0) {
                // 1文字も入力されなかった場合
                System.out.println("何か入れてください!");
            } else if (getLast(word).equals("")) {
                System.out.println("あなたの負け!");
                break;
            }
        }
    }
    
    // 文字列の最後の文字を返す. 
    private static String getLast(String s) {
        return s.substring(s.length() - 1);
    }
}

1文字も入力されなかった場合に getLast メソッドでエラーにならないように,予めチェックするようにしました.

getLast(word).equals("ん") は,まずgetLast(word)を実行し,その結果(String)に対して,equals("ん") を実行するという意味です.下と同等です.

String tmp = getLast(word);
if (tmp.equals("ん")) {
  ..
}
ナビゲーション