数组的练习

简介: 数组的练习

一、数组转字符串

int[] arr = {1,2,3,4,5,6};
String newArr = Arrays.toString(arr);
System.out.println(newArr);
 
 
// 执行结果
[1, 2, 3, 4, 5, 6]

使用这个方法后续打印数组就更方便一些. Java 中提供了 java.util.Arrays 包, 其中包含了一些操作数组的常用方法.

二、数组的拷贝

代码示例

import java.util.Arrays;
public static void func(){
// newArr和arr引用的是同一个数组
// 因此newArr修改空间中内容之后,arr也可以看到修改的结果
int[] arr = {1,2,3,4,5,6};
int[] newArr = arr;
newArr[0] = 10;
System.out.println("newArr: " + Arrays.toString(arr));
// 使用Arrays中copyOf方法完成数组的拷贝:
// copyOf方法在进行数组拷贝时,创建了一个新的数组
// arr和newArr引用的不是同一个数组
arr[0] = 1;
newArr = Arrays.copyOf(arr, arr.length);
System.out.println("newArr: " + Arrays.toString(newArr));
// 因为arr修改其引用数组中内容时,对newArr没有任何影响
arr[0] = 10;
System.out.println("arr: " + Arrays.toString(arr));
System.out.println("newArr: " + Arrays.toString(newArr));
// 拷贝某个范围.
//一:
int[] newArr2 = Arrays.copyOfRange(arr, 2, 4);
System.out.println("newArr2: " + Arrays.toString(newArr2));
//二:
int[] newArr3=new int[arr.length]
//从目标数组下标1处拷贝到目标数组下标为一处,拷贝arr.length-1个元素
System.arraycopy(arr,1,newArr3,0,arr.length-1);
System.out.println("newArr3: " + Arrays.tostring(newArr3));
}

三、数组的改变

public static void main(String[] args) {
     int []arr={1,2,3,4,5,4,3,5};
\\将数组的所有元素改为5;
     Arrays.fill(arr,5);
     System.out.println(Arrays.toString(arr));
     Arrays.fill(arr,1,4,2);
\\将数组从下标1到3的元素改为2;
     System.out.println(Arrays.toString(arr));

四、数组的升序排列

     int []arr={1,2,3,4,5,4,3,5};
     \\数组从下标为2到下标为5的元素升序重新排列
     Arrays.sort(arr,2,6);
     System.out.println(Arrays.toString(arr));

五、二维数组

 public static void main(String[] args) {
\\可以没有列,但不能没有行
     int[][] array= new int[2][];
     array[0]=new int[]{11,22,33,44};
     array[1]=new int[]{111,222,333,444,555,666,777};
     for (int i = 0; i < array.length; i++) {
         for (int j = 0; j < array[i].length; j++) {
             System.out.println(array[i][j]+" ");
         }
     }
     System.out.println(Arrays.deepToString(array));
 }
相关文章
|
1月前
|
存储 算法 C++
c++数组详细介绍(二)
c++数组详细介绍(二)
82 0
|
1月前
|
存储 算法 计算机视觉
数组
数组
32 0
|
8天前
数组(2)
数组(2)
16 1
|
8天前
|
存储 算法 编译器
数组(1)
数组(1)
14 0
|
1月前
|
存储 搜索推荐 算法
C数组
C数组
21 0
|
10月前
|
存储 机器学习/深度学习 Java
原来这就是数组
原来这就是数组
59 0
|
1月前
|
存储 程序员 C++
|
1月前
|
存储 C++
C++-数组总结
C++-数组总结
36 0
|
10月前
|
存储 IDE Linux
|
存储 人工智能 编译器
6.数组
6.数组
55 0