java - 如何通过方法返回一个新号码

标签 java

我是java新手。
我必须编写一个程序,通过根据以下条件在现有目录号左侧添加一个数字,将现有目录号(3-5 位)修改为新的目录号:

  1. 新数字将是最左边的数字到最右边的数字之间最大的数字。
  2. 如果最左边的数字等于最右边的数字,则新数字将为 9。

输入应该是10个数字,然后添加一个新数字。 问题是,现在,方法“newKatalogNumber”获取旧的目录号,并返回左侧的数字,我喜欢该方法返回新的目录代码。例如,如果该方法获取 1234,她将返回 41234,并且它将打印在 main 的末尾。我还没有找到办法做到这一点。 有人知道如何做到这一点吗? 我会很感激。

这是我的代码:

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);
            }
        }
    }
}

最佳答案

如果您有一个像 1234 这样的数字,并且您想在开头添加一个 5,那么您应该这样做:

1234 + 5 * 10000

如果您想在末尾添加5,您应该这样做:

1234 * 10 + 5 

请注意,在第一种情况下,10000 中零的数量等于原始数字中的位数。

关于java - 如何通过方法返回一个新号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20151606/

相关文章:

Javamail 正文与附件一起时不显示

java - 如何计算字符串中某个字母的出现次数而不重复打印?

java - 碰撞检测-避开盒子

Java观察者模式问题?

java - 智能 : Tests not started

java - 如何更改 NavigationView 的 xml 文件中菜单封闭项的标题颜色

java - 不幸的是,程序名称已停止

java - 运行时如何知道EJB是什么样的?

java - PowerMock,模拟一个静态方法,然后在所有其他静态上调用真实方法

java - 如何将字符串转换回字节以便用 Java 写入文件?