欢迎访问宙启技术站
智能推送

Java数组函数大全:10个必备的方法

发布时间:2023-06-07 08:06:42

Java是一种对象导向的编程语言,数组是Java中最常用的数据类型之一。Java数组函数提供了一些基本的方法,可以轻松地操作数组。使用Java数组函数可以快速排序、搜索、删除、拷贝等一系列操作。本文将介绍10个Java数组函数,这些函数是Java开发中最重要的函数,非常适合初学者学习。

1. Arrays.sort()

Arrays.sort()函数可以对数组进行排序。它采用“单向比较排序”(single-pass comparison sort)算法,将排序结果按升序排列。例如,以下代码将按升序排列一个整数数组:

import java.util.Arrays;
public class SortArray {
   public static void main(String args[]) {
      int array[] = { 6, 2, 5, 9, 1, 3 };
      Arrays.sort(array);
      for (int i = 0; i < array.length; i++) {
         System.out.print(array[i] + " ");
      } 
   }
}

输出结果:1 2 3 5 6 9

2. Arrays.binarySearch()

Arrays.binarySearch()可以用来查找数组中指定元素的位置。如果数组已经排序,则该方法可以更快地进行搜索。以下是一个使用Arrays.binarySearch() 查找元素的例子:

import java.util.Arrays;

public class BinarySearchArray {

   public static void main(String[] args) {
      int array[] = { 1, 2, 3, 5, 6, 9 };
      int index = Arrays.binarySearch(array, 5);
      System.out.println("The index of element 5 is : " + index);
   }

}

输出结果:The index of element 5 is : 3

如果元素不在数组中,方法将返回一个负数。例如:

import java.util.Arrays;

public class BinarySearchArray {

   public static void main(String[] args) {
      int array[] = { 1, 2, 3, 5, 6, 9 };
      int index = Arrays.binarySearch(array, 4);
      System.out.println("The index of element 4 is : " + index);
   }

}

输出结果:The index of element 4 is : -4

3. Arrays.equals()

Arrays.equals()函数用于比较两个数组是否相等。以下是一个使用Arrays.equals()比较两个数组是否相等的例子:

import java.util.Arrays;

public class CompareArrays {

   public static void main(String args[]) {
      int array1[] = { 1, 2, 3, 4, 5 };
      int array2[] = { 1, 2, 3, 4, 5 };
      boolean result = Arrays.equals(array1, array2);
      if(result) {
         System.out.println("Two arrays are equal");
      } else {
         System.out.println("Two arrays are not equal");
      }
   }
}

输出结果:Two arrays are equal

4. Arrays.fill()

Arrays.fill()函数可以用来填充数组。以下是一个使用Arrays.fill()填充数组的例子:

import java.util.Arrays;

public class FillArray {

   public static void main(String args[]) {
      int array[] = {1, 2, 3, 4, 5};
      Arrays.fill(array, 10);
      for(int i = 0; i < array.length; i++) {
         System.out.print(array[i] + " ");
      }
   }
}

输出结果:10 10 10 10 10

5. Arrays.copyOf()

Arrays.copyOf()函数可以用来复制一个数组。以下是一个使用Arrays.copyOf()复制数组的例子:

import java.util.Arrays;

public class CopyArray {

   public static void main(String args[]) {
      int[] array1 = {1, 2, 3, 4, 5};
      int[] array2 = Arrays.copyOf(array1, 10);
      for(int i = 0; i < array2.length; i++) {
         System.out.print(array2[i] + " ");
      }
   }
}

输出结果:1 2 3 4 5 0 0 0 0 0

6. Arrays.asList()

Arrays.asList()函数可以将一个数组转换成一个列表。以下是一个使用Arrays.asList() 将数组转换成列表的例子:

import java.util.Arrays;
import java.util.List;

public class ArrayToList {

   public static void main(String args[]) {
      String[] array = { "orange", "apple", "banana" };
      List<String> list = Arrays.asList(array);
      for(String fruit : list) {
         System.out.print(fruit + " ");
      }
   }
}

输出结果:orange apple banana

7. System.arraycopy()

System.arraycopy()函数可以用来复制一个数组的一部分到另一个数组中。以下是一个使用System.arraycopy()复制数组的例子:

public class CopyArray {

   public static void main(String args[]) {
      int[] array1 = {1, 2, 3, 4, 5};
      int[] array2 = new int[10];
      System.arraycopy(array1, 0, array2, 0, 5);
      for(int i = 0; i < array2.length; i++) {
         System.out.print(array2[i] + " ");
      }
   }
}

输出结果:1 2 3 4 5 0 0 0 0 0

8. Arrays.toString()

Arrays.toString()函数可以将一个数组转换成一个字符串。以下是一个使用Arrays.toString()将数组转换成字符串的例子:

import java.util.Arrays;

public class ArrayToString {

   public static void main(String args[]) {
      int[] array = {1, 2, 3, 4, 5};
      String str = Arrays.toString(array);
      System.out.println(str);
   }
}

输出结果:[1, 2, 3, 4, 5]

9. Arrays.deepToString()

Arrays.deepToString()函数可以将一个多维数组转换成一个字符串。以下是一个使用Arrays.deepToString()将多维数组转换成字符串的例子:

import java.util.Arrays;

public class MultiArrayToString {

   public static void main(String args[]) {
      int[][] multiArray = { { 1, 2 }, { 3, 4 }, { 5, 6 } };
      String str = Arrays.deepToString(multiArray);
      System.out.println(str);
   }
}

输出结果:[[1, 2], [3, 4], [5, 6]]

10. Arrays.stream()

Arrays.stream()函数可以将一个数组转换成一个流对象,这对于Java 8 中的流式处理非常有用。以下是一个使用Arrays.stream()将数组转换成流对象的例子:

import java.util.Arrays;
import java.util.stream.IntStream;

public class ArrayToStream {

   public static void main(String args[]) {
      int[] array = {1, 2, 3, 4, 5};
      IntStream stream = Arrays.stream(array);
      stream.forEach(num -> System.out.print(num + " "));
   }
}

输出结果:1 2 3 4 5

以上是Java数组函数中最常用的10个函数,当然Java中的数组函数还远不止这些。学好Java数组函数,可以让你更好地处理数组,完成更多的编程任务。