每个人!我刚刚开始对Java感兴趣,并且无法将数组类型的结果长时间转换为int类型。如果我懂写的话,在这里我仍然会得到int类型的结果:(你能给我一些建议吗?谢谢!
public class Main {
public static void main(String[] args) {
long[] numbers;
numbers = sorting(new long[]{5, 21, 19, 55, 94, 73, 69, 100,});
}
public static long[] sorting(long [] numbers) {
for (long num : numbers) {
long j = 0;
for (int i = 0; i < numbers.length - 1; i++) {
if (numbers[i] > numbers[i + 1]) {
j = numbers[i];
numbers[i] = numbers[i + 1];
numbers[i + 1] = j;
}
}
System.out.println(num + ",");
}
return (numbers);
[将long []转换为int [],您需要遍历long []数组,将每个数字转换为int并将其放入int []数组。
// Your result
long[] numbers = sorting(new long[] {5, 21, 19, 55, 94, 73, 69, 100});
// Define a new int array with the same length of your result array
int[] intNumbers = new int[numbers.length];
// Loop through all the result numbers
for(int i = 0; i < numbers.length; i++)
{
// Cast to int and put it to the int array
intNumbers[i] = (int) numbers[i];
}
或者您也可以将Java Streams(> = 1.8)用于较短的版本:
int[] intArray = Arrays.stream(numbers).mapToInt(i -> (int) i).toArray();
[convert-an-int-array-to-long-array-using-java-8
您可以尝试以下方法:
long[] longArray = {1, 2, 3};
int[] intArray = Arrays.stream(longArray).mapToInt(i -> (int) i).toArray();