(1)ユーザーのフルネームの入力を要求してユーザー名を生成するプログラムを作成しようとしています。 (2)は番号の入力を促し、その番号が奇数か偶数かを判断します。私はユーザー名と奇数/偶数クラスのコードを書き、メインクラスからそれらを呼びたいと思います。しかし、メインクラスから呼び出された場合、usernameメソッドはユーザー名を生成する前にユーザーに2回プロンプトを出し、odd/evenメソッドはユーザーが入力した番号がodd/evenであるかどうかを実際には判断しません。ユーザー名クラスからスキャナオブジェクトを削除すると、範囲外のコンパイルエラーが発生するので、プログラムが実行されるようにする必要があります。リターンステートメントを使用すべきですか?クラスからJavaのメインクラスへのユーザー入力
ユーザー名
/**
* Class to generate the username based on user's first name and randomly generated numbers
*/
public void username()
{
Scanner inputReader = new Scanner(System.in);
String fullName = inputReader.nextLine();
// create random object and variable to store it in
Random randomizer = new Random();
int randomNumber = randomizer.nextInt(1000);
// create variable to store lowercase username
String lowercase = (fullName.toLowerCase());
// create string variable to format username to first three characters in lowercase
String firstThreeLetters = (lowercase.substring(0, 3));
// concatenate lowercase characters and random number
String usernameFinal = (firstThreeLetters + randomNumber);
// print out final username
System.out.println("Your username is " + usernameFinal);
}
奇数/偶数
/**
* Class to determine if a user inputted value is odd or even
*/
public void OddEven1()
{
Scanner inputReader = new Scanner(System.in);
int userInteger = 0;
// if/else to determine if number is odd or even
if (userInteger % 2 == 0)
{
System.out.println(userInteger + " is an even number.");
}
else
{
System.out.println(userInteger + " is an odd number.");
}
}
Mainメソッド
{
/**
* This class holds the main method through which all other classes are run.
*/
public static void main(String[] args)
{
// create objects
Username usernameGenerator = new Username();
OddEven oddeven = new OddEven();
Scanner inputReader = new Scanner(System.in);
// prompt for real name and print username
System.out.print("Name: ");
String fullName = inputReader.nextLine();
usernameGenerator.username();
// prompt for number
System.out.print("Give me a number: ");
// variable to store value
int userInteger = inputReader.nextInt();
oddeven.OddEven1();
}
あなたは基本的にあなたが二回それを必要といけないメインにしたり、カスタムクラスで入力を読まなければならない。.. – RohitS