[英]How to return new number from method to the main
我是Java新手。
我必須編寫一個程序,通過根據以下條件在現有目錄編號的左側添加一個數字,從而將現有目錄編號(3-5位數字)修改為新的目錄編號:
輸入應為10個數字,然后添加一個新數字。 問題在於,現在,方法“ newKatalogNumber”獲得舊的目錄號,並返回左數字,我喜歡該方法根據條件(現在是主條件)返回新的目錄代碼。 例如,如果該方法獲取1234,則她將返回41234,並將其打印在主體的末尾。 我還沒有找到一種方法。 酶有線索怎么做嗎? 我會很感激。
這是我的代碼:
import java.util.Scanner; // This program gets an old catalog number between 3 to 5 digits and change it to a new catalog number
// by adding a new digit to the left of the number
public class Number
{
public static int newKatalogNumber(int num)
{
while (num>=10)
{
num /= 10;
}
return num;
}
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
for (int oldNum=0; oldNum<10; oldNum++)
{
System.out.print("Insert old catalog Number: ");//The user insert the old catalog number
int catalogNum = input.nextInt();
int mostRight = catalogNum % 10;
int mostLeft = newKatalogNumber(catalogNum);
//Adding the new digit according to condition below:
if (mostRight>mostLeft)
{
System.out.println("Old catalog number is:"+catalogNum);
System.out.println("New catalog number is"+mostRight+catalogNum);
}
else if (mostLeft>mostRight)
{
System.out.println("Old catalog number is:"+catalogNum);
System.out.println("New catalog number is"+mostLeft+catalogNum);
}
else
{
System.out.println("Old catalog number is:"+catalogNum);
System.out.println("New catalog number is"+9+catalogNum);
}
}
}
}
您可以創建一個static
方法來執行所有計算,並在main()
返回結果
public static int doComputation(int someNumber){
// your logic
return result;
}
在您的主機內部,您可以執行以下操作:
int whatIGetBack = doComputation(5);
System.out.println("Result in main() " + whatIGetBack);
您可以將數字乘以10來將前面的數字隨機排列
public static int newKatalogNumber(int num)
{
int original = num;
int multiplier = 1;
while (num>=10)
{
num /= 10;
multiplier *= 10;
}
return (num * mulitplier) + original;
}
另一種方法是轉換為字符串並使用字符串連接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.