Javaでテキストベースのゲームを作成しようとしています。このゲームでユーザーの名前を尋ね、ゲームに挿入します。入力した文字列に任意の数字を付けて評価しようとしています。すなわち09452
またはasdf1234
。
これが問題に関連するコードです。
String name, choiceSelection;
int choice;
name = JOptionPane.showInputDialog(null, "Enter your name!");
//CHECKS IF USER ENTERED LETTERS ONLY
if (Pattern.matches("[0-9]+", name))
{
throw new NumberFormatException();
}
else if (Pattern.matches("[a-zA-Z]+", name))
{
if (Pattern.matches("[0-9]+", name))
{
throw new NumberFormatException();
}
}
文字列に数字が含まれているかどうかを調べようとしてNumberFormatException
います。含まれている場合は、正しいプロンプトに従わなかったことを知らせるためにをスローします。
name
ユーザーが文字列に数字を入力しないようにするための最良の方法は何ですか?