提问人:Aaron 提问时间:4/7/2011 更新时间:6/19/2017 访问量:99651
如何使用 java.util.Arrays
How to use java.util.Arrays
问:
我正在尝试在 JavaSE 6 中使用 java.util.Arrays 类,但不确定如何实现它?在我生成的数组上?
在课程开始之前,我有
import java.util.Arrays
答:
3赞
Justin Waugh
4/7/2011
#1
您没有提供有关您正在尝试执行的操作的足够信息。 只公开静态方法,因此您只需传入数组和所调用的特定方法所需的任何其他参数即可。例如,将用值 填充布尔数组。java.util.Arrays
Arrays.fill(myarray,true)
true
这是 java.util.Arrays 的 javadoc
8赞
corsiKa
4/7/2011
#2
好吧,假设你有一个数组
int[] myArray = new int[] { 3, 4, 6, 8, 2, 1, 9};
你想对它进行排序。你这样做:
// assumes you imported at the top
Arrays.sort(myArray);
这是整个shebang:
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>
17赞
justkt
4/7/2011
#3
Java 数组
要声明整数数组,请从以下步骤开始:
int[] myArray;
要实例化包含 10 个整数的数组,您可以尝试:
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 的教程将提供很大帮助。您还可以查看 Array 上的 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);
评论
0赞
GriffeyDog
4/7/2011
“在 Java 中,数组不是对象(java.util.Object 的后代)。相反,它是一种原始类型。真?从什么时候开始,数组就不是对象了?
2赞
Peter Lawrey
4/7/2011
#4
您可以使用静态导入
import static java.util.Arrays.*;
int[] ints = {3, 4, 1, 2, 5, 7, 6};
sort(ints);
1赞
Samet Sazak
7/19/2013
#5
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]);
}
}
结果:
"1.1,2.3,5.6,7.5,12.2,44.7,4.25,2.12"
评论