Java 如何将前导零添加到int?

Java 如何将前导零添加到int?,java,Java,如果我输入一个int值,是否可以保持前导零。例如,如果我输入0123,是否有方法在不格式化数据的情况下传递该零。 我在一个网站上看到一个练习,要求输入一个isbn号作为整数并验证它。给出的初始代码如下所示 import java.util.Scanner; public class isbncheck { public static void main(String[] args) { int num= 0; int digit = 0;

如果我输入一个int值,是否可以保持前导零。例如,如果我输入0123,是否有方法在不格式化数据的情况下传递该零。 我在一个网站上看到一个练习,要求输入一个isbn号作为整数并验证它。给出的初始代码如下所示

import java.util.Scanner;

public class isbncheck {

    public static void main(String[] args) { 
        int num= 0;
        int digit = 0;
        int sum = 0;

        System.out.println("Enter ISBN Number:");
        Scanner sc = new Scanner(System.in);

        num = sc.nextInt();

        /*
        Your code here
        */

        System.out.println("The ISBN number is:");
    }
}
该网站的链接是


如果我想获取输入的第一个数字并对其进行处理,那么如果第一个整数是0,我就不能。要测试代码,输入为0201314525。然而,我失去了最初的零,然后我无法使代码工作。我使用了一个字符串输入,而不是一个int,然后我可以操纵它来做我想做的事情。给定代码的显示方式,是否可以完成该代码?

您需要将该值保留为字符串。无论如何,您应该使用类似ISBN的数字来实现这一点,因为它的值不是它的大小,而是它的字符串表示形式


为什么不直接使用“String num=sc.next();”

否。
int
不能固有地格式化,您可以将其存储为字符串。或者,您需要输入
int
以获得前导零

String isbn = String.format("%013d", num); // 0 fill to 13 digits num

我猜,即使是转换为int的字符串输入也会删除这些零!如果对象要验证某些用户输入,则需要将输入保持为字符串。然后,您可以对字符串执行验证,例如,该值是否为整数。您可能可以稍后对其进行格式化。看一看,我把你的问题标记为一个重复的问题,但现在我不确定其他人都说了什么,我只想补充一个结论:不,代码不可能按照现在的方式完成以满足需求。但这也是一个学习的时刻;网络也充满了胡说八道。尽量坚持使用信誉良好的信息来源和指导。谢谢你的回答。我也认为不能那样做。我做了myinput.nextString()。然后我一个接一个地处理字符串。chartAt()以得到不同的数字。我在解释中添加了这个。我用字符串来代替。