int value = 1234; List<Integer> result = new LinkedList<Integer>(); while(value != 0) { result.add(0, value%10); value = value / 10; } System.out.println(result);
[其他解释] 也不知道你要的是不是这样 String str = "1234"; int strLength = str.length(); int[] a = new int[strLength]; for(int i=0;i<strLength;i++){ a[i]=Integer.parseInt(str.substring(i, i+1)); } System.out.println(a[0]); [其他解释]
int value = 1234; String sValue = Integer.toString(value); int size = sValue.length(); int[] result = new int[size]; for (int i = 0; i < size; i++) result[i] = sValue.codePointAt(i) - '0';
System.out.println(Arrays.toString(result));
[其他解释]
正解 [其他解释]
前面是int n = 1234; 不是 String类型。 [其他解释]
在前面剪掉'0'倒是不错的想法,不过,不知道有没有更好的办法,就是不用转换为char类型再转换回来的方法。谢谢了。 [其他解释] 楼主就不知道变通下吗。。。 int num = 1234; String str = String.valueOf(num); int strLength = str.length(); int[] a = new int[strLength]; for(int i=0;i<strLength;i++){ a[i]=Integer.parseInt(str.substring(i, i+1)); } System.out.println(a[0]); [其他解释] 求余然后存入数组就OK了 [其他解释] 求余然后存入数组就OK了 [其他解释]