如何使用java.util.Arrays

9

我正在尝试在JavaSE 6中使用java.util.Arrays类,但不确定如何在我生成的数组上实现它?

在类的开始之前,我有:

import java.util.Arrays

2
我认为你想问的是如何在Java中使用数组。在这种情况下,你不需要导入java.util.Arrays,而是使用数组语法即可。 - donnyton
5个回答

17

Java 数组

要声明一个整数数组,你需要开始使用以下代码:

int[] myArray;

要实例化一个包含十个整数的数组,可以尝试以下代码:

myArray = new int[10];

要在该数组中设置值,请尝试:

myArray[0] = 1; // arrays indices are 0 based in Java

或在实例化时:

int[] myArray2 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

要从数组中获取值,请尝试:

System.out.println(myArray[0]);

要打印数组中的所有值,请尝试:

// go from 0 to one less than the array length, based on 0 indexing
for(int i = 0; i < myArray2.length; i++) {
    System.out.println(myArray2[i]);
}

要获取更多信息,可以查看Sun/Oracle的教程。您也可以查看Java语言规范中的数组章节

使用Arrays实用工具类

java.util.Arrays包含许多静态方法。静态方法属于类,并且不需要实例化该类即可调用。取而代之的是,它们以类名作为前缀进行调用。

因此,您可以执行以下操作:

// print a string representation of an array
int[] myArray = {1, 2, 3, 4};
System.out.println(Arrays.toString(myArray));

或者

// sort a list
int[] unsorted = {3, 4, 1, 2, 5, 7, 6};
Arrays.sort(unsorted);

在Java中,数组不是对象(java.util.Object的后代)。相反,它是一种原始类型。 真的吗?从什么时候开始数组不是对象了? - GriffeyDog

8

假设你有一个数组

int[] myArray = new int[] { 3, 4, 6, 8, 2, 1, 9};

如果你想对它进行排序,可以这样做:

// assumes you imported at the top
Arrays.sort(myArray);

以下是所有内容:

import java.util.Arrays;
class ArrayTest {
    public static void main(String[] args) {
        int[] myArray = new int[] { 3, 4, 6, 8, 2, 1, 9};
        Arrays.sort(myArray);
        System.out.println(Arrays.toString(myArray));
    }
}

这导致了:
C:\Documents and Settings\glow\My Documents>java ArrayTest
[1, 2, 3, 4, 6, 8, 9]

C:\Documents and Settings\glow\My Documents>

3
你没有提供足够的信息说明你要做什么。 java.util.Arrays 只公开静态方法,因此您只需传递数组和其他必要的参数即可调用特定方法。例如,Arrays.fill(myarray,true) 会将布尔数组填充为值true
这是java.util.Arrays的Javadoc。

2
你可以使用静态导入。
import static java.util.Arrays.*;

int[] ints = {3, 4, 1, 2, 5, 7, 6};
sort(ints);

1
public static void main(String[] args) {

double array[] = {1.1,2.3,5.6,7.5, 12.2, 44.7,4.25, 2.12};
Arrays.sort(array,1,3); 
for(int i =0;i <array.length;i++){

System.out.println(array[i]);
}
}

result:

"1.1,2.3,5.6,7.5,12.2,44.7,4.25,2.12"


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接