我想从给定的整数中提取个人号码。例如从1234开始,我想将1,2,3,4存储在一个数组中。每次数字的位数可能都不相同。我不知道如何初始化相同的数组。从数字中提取个人数字。
int number = 1234;
int [] a = new int[];
for(int i =0;i<lengthOfNum;i++){
a[i] = digitReturn();
}
我想从给定的整数中提取个人号码。例如从1234开始,我想将1,2,3,4存储在一个数组中。每次数字的位数可能都不相同。我不知道如何初始化相同的数组。从数字中提取个人数字。
int number = 1234;
int [] a = new int[];
for(int i =0;i<lengthOfNum;i++){
a[i] = digitReturn();
}
名单:
int number = 1234;
int length = Integer.toString(number).length();
int[] a = new int[length];
int index = length - 1;
for (int i = 0; i < length; i++){
a[i] = number % 10;
number = number/10;
index--;
}
转换数量为String获取大小并使用该值声明数组的长度,然后循环遍历它,使用模数提取最后一个数字,然后除以整数中的最后一个数字。
非常感谢。 – user2195582 2014-11-04 03:07:43
没问题,我刚刚意识到订单实际上会颠倒过来(即,如果以这种方式进行操作,您将获得4321而不是1234)如果您想要正确的订单,请参阅我的最新更改 - 只是向后填充阵列。 – RizJa 2014-11-04 03:09:39
将数字转换为字符串,然后将字符串拆分为数组。在那之后,字符转换成整数,像这样:
int number = 1234;
List<Integer> digits = ArrayList<Integer>();
String digitsAsString = ("" + number).split("");
for(String digitAsString:digitsAsString){
digits.add(new Integer(Integer.parseInt(digitAsString));
}
你的数字数组是你可以尝试以下的digits
我不想使用列表,我想使用数组。 – user2195582 2014-11-04 02:56:18
你可以使用digits.toArray() – DrOverbuild 2014-11-04 03:01:58
或者你可以在String.charAt()方法的基础上构建你的方法,如下面的bakalolo,它非常适合数组。使用.split()似乎有点过分。 – MarsAtomic 2014-11-04 03:23:05
int number = 4567;
String number_string = String.valueOf(number);
char[] chars = number_string.toCharArray();
int[] digits = new int[chars.length];
int i = 0;
for (char c : chars) {
digits[i] = c - '0';
i++;
}
int number = 1234;
String num = Integer.toString(number);
int [] a = new int[num.length()];
for(int i = 0; i < num.length(); i++){
a[i] = Character.getNumericValue(num.charAt(i));
}
先转换数为字符串,通过每个炭环路,并转换成一个整数,那么该值存储到一个。
你想将个别数字作为“int”值吗?或者没有关系? – TNT 2014-11-04 02:49:38
我想要它作为int。 – user2195582 2014-11-04 02:50:24