我编写了我的代码并且它完全有效,但我没有编写自己的方法。赋值的重点是练习使用子程序,这就是我必须使用的。我读到了制作自己的方法 - 很多。但是我仍然无法解开它。
这是我的一段代码。你可以通过解释我如何使用它并调用它来帮助我吗?
public static void main(String[] args) {
//Display welcome message
System.out.println("Welcome to the Math Functions event!");
Scanner keyIn = new Scanner(System.in);
Scanner userInput;
System.out.print("Press the ENTER key to toss the dice.");
keyIn.nextLine();
//roll dice
Random rand = new Random();
int tries = 0;
int sum = 0;
while (sum != 7 && sum != 11) {
// roll the dice once
int roll1 = rand.nextInt(6) + 1;
int roll2 = rand.nextInt(6) + 1;
sum = roll1 + roll2;
System.out.println(roll1 + " + " + roll2 + " = " + sum);
tries++;
}
}
任何帮助将不胜感激!谢谢!
答案 0 :(得分:1)
以下是一个给你随机掷骰子的方法示例:
public static int rollDice()
{
Random rand = new Random();
int roll = rand.nextInt(6) + 1;
return roll;
}
您可以像这样调用函数:
int roll = rollDice();
因此可以将它集成到您的程序中,例如:
public static void main(String[] args) {
//Display welcome message
System.out.println("Welcome to the Math Functions event!");
Scanner keyIn = new Scanner(System.in);
Scanner userInput;
System.out.print("Press the ENTER key to toss the dice.");
keyIn.nextLine();
int tries = 0;
int sum = 0;
while (sum != 7 && sum != 11) {
// Here is where you call your newly created method
int roll1 = rollDice();
int roll2 = rollDice();
sum = roll1 + roll2;
System.out.println(roll1 + " + " + roll2 + " = " + sum);
tries++;
}
}
这个想法是你想把一个复杂的任务分成许多较小的任务。这样就可以更容易地进行调试。以上只是一个例子,但是如果你正在执行一个你认识到重复的操作,那么一个函数永远不会受到伤害。
尝试以下列方式考虑您的功能:
<强> 1。我的功能是做什么的?
<强> 2。它应该为我提供哪些数据?
第3。我的功能为我提供这些数据的最低要求是什么?
对于对注释中提到的字符串的字符进行计数的函数:
鉴于此信息,我们可以提出以下功能协议:
public static int countCharacters(String myString)
{
int count = myString.length();
return count;
}
返回类型和值是int
,因为它是您需要提供的,myString
是该函数需要工作的唯一数据。以这种方式思考会使代码更易于维护,并且您可以将复杂的任务分解为几个非常简单的步骤。