【发布时间】:2019-06-17 06:58:46
【问题描述】:
我想优化这个解决方案(惯用的)。
我有一个只包含整数值的字符串。我想将此字符串转换为反向 int 数组。输出应该是一个整数数组
这是我的解决方案:
private static int[] stringToReversedIntArray(String num) {
int[] a = new int[num.length()];
for (int i = 0; i < num.length(); i++) {
a[i] = Integer.parseInt(num.substring(i, i + 1));
}
a = reverse(a);
return a;
}
/*
* Reverses an int array
*/
private static int[] reverse(int[] myArray) {
int[] reversed = new int[myArray.length];
for (int i = 0; i < myArray.length; i++) {
reversed[i] = myArray[myArray.length - (i + 1)];
}
return reversed;
}
Input: "1256346258"
Output: {8,5,2,6,4,3,6,5,2,1}
请建议如何做。
【问题讨论】:
-
您尝试过哪些“标准库方法调用”?你有没有做过任何研究来看看有什么可用的?
-
在您解码原始字符串的同时反转:
a[num.length()-i-1] = num.charAt(i)-'0'; -
这个问题似乎有一个由 OP 提供的解决方案。它可能更适合 codereview.stackexchange.com。