我一直在搜尋這個網站和其他人在過去的兩天,因此我意識到已經存在的問題與此類似的壓倒性數額。但是,在三四周前纔開始編程,我無法理解它們中的任何一個及其線程。考慮到這一點,我有一個問題,對更有經驗的人可能擁有一個痛苦的基本和直接的解決方案。代碼無法從方法返回整數值(Java/Eclipse)
使用Eclipse,我必須創建一個程序,它執行以下操作:
- 讀取在兩個數字(整數)
- 包含,是以兩個整數作爲參數並返回大的方法的兩個。
- 包含從main()調用的另一個方法將(2)中方法返回的較大數字作爲參數並返回最後一位數字。
- 打印(2)和(3)中的方法返回的兩個值。
我已經創建的代碼(下面顯示)成功讀取的用戶輸入,但無法打印出兩個較大的整數和大整數的最後一位數字。它會打印出「0」。這就是打印到控制檯:
Enter First Integer: (Entered Integer)
Enter Second Integer: (Entered Integer)
Larger Integer: 0
Last Digit: 0
我相信,代碼應該正常運行,保存該值的方法內確定沒有被返回到主的事實。 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);
}
}
你不存儲任何地方的方法的返回值。 –
使用你的代碼,把你的第一個方法調用的'answer ='infront和'lastDigit ='你的第二個方法的前面 –