long strong [1] object sta 结果 排列 二维 范围
数组作为函数的参数
数组作为函数的返回值
输出结果:
class A{
public static int[] backarr(int[] arr){
int[] resultarr = new int[arr.length];
for (int i = 0,j=resultarr.length-1; i < arr.length; i++,j--) {
resultarr[j] = arr[i];
}
return resultarr;
}
}
public class TestArr2{
public static void main(String[] args){
int[] arr = {1,2,3,4,5,6,7,8,9};
for(int i:arr){
System.out.print(i + " ");
}
System.out.println(" ");
arr = A.backarr(arr);
for (int i : arr) {
System.out.print(i + " ");
}
}
}
arr数组既作为参数 又作为返回值!!!
1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1
多维数组
String str[][] =new String[3][4]; 理解:3 行 4 列的矩阵
1. 多维数组的初始化 格式:
2. 从最高维开始分别为每一维分配内存
type arrayName = new type[arraylength1][arraylength2];
int arr[][] = new int[3][4];
Sting str[][] = new String[2[];声明二维数组str:两行 列数待定
arr[0] = new String[2];确定第一行含有2个元素
arr[1] = new String[3];确定第二行含有3个元素
数组结构 = {{"E1", "E2", {"E1", "E2", "E3"}
Arrays 类
java.util.Arrays 类能方便地操作数组,它提供的所有方法都是静态的
1. 给数组赋值 通过 file 方法
2. 对数组排序 通过 sort 方法 按升序
3. 比较数组 通过 equals 方法比较数组中元素值是否相等
4. 查找数组元素 通过 binarySearch 方法能对排序好的数组进行二分查找法操作
方法 说明
public static void fill(int[] a, int val) 将指定的 int 值分配给指定 int 型数组指定范围中的每个元素.
public static void sort(Object[] a) 对指定对象数组根据其元素的自然顺序进行升序排列
public static boolean equals(long[] a, long[] a2) 如果两个指定的 long 型数组彼此相等,则返回 true.
public static int binarySearch(Object[] a, Object key) 用二分查找算法在给定数组中搜索给定值的对象
}输出结果:5 5 5 5 5 5 5 8 8 5 7 8 1 2 3 6 9 5 4 1 2 3 4 5 6 7 8 9 false true 2 - 10
import java.util.Arrays;
public class TestArr2 {
public static void output(int[] array) {
if (array != null) {
for (int i = 0; i < array.length; i++) {
System.out.print(array[i] + " ");
}
}
System.out.println();
}
public static void main(String[] args) {
int[] arr = new int[5];
Arrays.fill(arr, 5); //填充数组
TestArr2.output(arr);
Arrays.fill(arr, 2, 4, 8); // 将数组的第2和第3个元素赋值为8
TestArr2.output(arr);
int[] arr1 = {
7,
8,
3,
2,
9,
6,
1,
5,
4
};
Arrays.sort(arr1, 2, 7); // 对数组的第2个到第6个进行排序进行排序
TestArr2.output(arr1);
Arrays.sort(arr1); // 对整个数组进行排序
TestArr2.output(arr1);
System.out.println(Arrays.equals(arr, arr1)); // 比较数组元素是否相等
int[] arr2 = arr1.clone(); //克隆
System.out.println(Arrays.equals(arr1, arr2));
Arrays.sort(arr1); // 必须先排序好,否则会报错
System.out.println(Arrays.binarySearch(arr1, 3)); //二分搜索算法查找指定元素3所在的下标
System.out.println(Arrays.binarySearch(arr1, 10)); // 如果不存在就返回负数
}
整理 Java 基础知识 -- 数组 2
来源: http://www.bubuko.com/infodetail-2460563.html