在过去的两天里,我一直在搜索这个网站和其他网站,因此我知道与这个类似的大量预先存在的问题。然而,在三四个星期前才开始编程,我无法理解它们中的任何一个和它们的线程。考虑到这一点,我有一个问题,对于更有经验的人来说,可能有一个痛苦的基本和直接的解决方案。
使用 Eclipse,我必须创建一个执行以下操作的程序:
- 读取两个数字(整数)
- 包含一个将两个整数作为参数并返回两者中较大者的方法。
- 包含从 main() 调用的另一个方法,将 (2) 中方法返回的较大数字作为参数并返回最后一位。
- 打印 (2) 和 (3) 中的方法返回的两个值。
我创建的代码(如下所示)成功读取了用户输入,但未能打印出较大的整数和较大的整数的最后一位。而是打印出“0”。这是打印到控制台的内容:
Enter First Integer: (Entered Integer)
Enter Second Integer: (Entered Integer)
Larger Integer: 0
Last Digit: 0
我相信代码应该可以正常运行,除了在方法内部确定的值没有返回到 main 的事实。Eclipse 没有显示任何错误消息,这使我相信问题出在我的返回语句中。欢迎和期望任何建议或解决方案。谢谢你。
import java.util.Scanner;
public class thursdayWork{
//Determines larger integer and returns it.
public static int processAndReturn(int int1, int int2, int answer){
answer = Math.max(int1, int2);
return answer;
}
//Determines last digit of integer and returns it.
public static int processLargerInt(int answer, int lastDigit){
if((answer >= 0) && (answer < 10))lastDigit = (answer % 10);
else if((answer >= 10) && (answer < 100))lastDigit = (answer % 100);
else if((answer >= 100) && (answer < 1000))lastDigit = (answer % 1000);
else if((answer >= 1000) && (answer < 10000))lastDigit = (answer % 10000);
else System.out.print("Pick smaller numbers.");
return lastDigit;
}
//Calls methods and prints returned values.
public static void main(String[] args){
Scanner console = new Scanner(System.in);
int int1;
int int2;
int answer = 0;
int lastDigit = 0;
System.out.print("Enter First Integer: ");
int1 = console.nextInt();
System.out.print("Enter Second Integer: ");
int2 = console.nextInt();
processAndReturn(int1, int2, answer);
System.out.println("Larger Integer: " + answer);
processLargerInt(answer, lastDigit);
System.out.print("Last Digit: " + lastDigit);
}
}