Java 在不使用字符串的情况下,在Arraylist中存储带前导零的整数值时,如何保持前导零?

Java 在不使用字符串的情况下,在Arraylist中存储带前导零的整数值时,如何保持前导零?,java,arraylist,Java,Arraylist,我希望在arraylist中存储一些电话号码,如果号码包含前导零,我希望按原样存储在arraylist中,而不删除前导零。我怎样才能做到这一点 ArrayList<Integer> Restrict = new ArrayList<Integer>(); cars.add(01); cars.add(02); cars.add(3); cars.add(4); System.out.println(cars.get(0)); 如何获取01而不是1。您可以将它们存储为字符

我希望在arraylist中存储一些电话号码,如果号码包含前导零,我希望按原样存储在arraylist中,而不删除前导零。我怎样才能做到这一点

ArrayList<Integer> Restrict = new ArrayList<Integer>();
cars.add(01);
cars.add(02);
cars.add(3);
cars.add(4);
System.out.println(cars.get(0));

如何获取
01
而不是1。

您可以将它们存储为字符串

ArrayList<String> Restrict = new ArrayList<>();
        cars.add("01");
        cars.add("02");
        cars.add("3");
        cars.add("4");

    System.out.println(cars.get(0));
ArrayList Restrict=new ArrayList();
添加(“01”);
加上(“02”);
加上(“3”);
加上(“4”);
System.out.println(cars.get(0));
Integer
是此要求的错误类型 一个电话号码至少由
10
个数字(1-9的第一个数字)组成,并且可以远远超过
Integer
的最大限制,即
2147483647

除此之外,整数开头的
0
表示它的基数是
8
,即它代表一个八进制数,例如

public class Main {
    public static void main(String[] args) {
        int x = 0123;
        System.out.println(x);
    }
}
输出:

83
注意,(0123)8=(83)10

此要求的正确类型为
String
,即您应按如下方式声明您的
列表

List<String> restrict = new ArrayList<>();

此外,请始终遵循,例如,变量的名称可以是
restrict
,但不应命名为
restrict
(如在您的代码中)。

存储字符串。整数不存储任何前导零,因为只存储实际的整数值。但在打印时,您可以像下面所示填充结果字符串:@maloomeister您怎么知道不填充3和4?你不能给1号车和01号车加皮重两辆不同的车吗?@bdc不,你不能。虽然这是一个很好的答案,但我还是忍不住觉得你的努力很重要misplaced@Michael-谢谢你的反馈。不用担心,反正我把它贴出来了,因为我已经走到一半了。如果这对任何人都有帮助的话,那就是我对这一努力的最好回报。
List<String> restrict = new ArrayList<>();
restrict.add("01234567890")
restrict.add("1234567890")