数组Arrays

简介: 1.toString 方法Arrays的toString方法可以方便的输出一个数组的字符串形式,方便查看,它有九个重载的方法,包括八种基本类型数组和一个对象类型数组,这里列举两个:public static String toString(int[] a)public static Stri...

1.toString 方法

Arrays的toString方法可以方便的输出一个数组的字符串形式,方便查看,它有九个重载的方法,包括八种基本类型数组和一个对象类型数组,这里列举两个:

public static String toString(int[] a)
public static String toString(Object[] a) 

例如:

int[] arr = {9,8,3,4};
System.out.println(Arrays.toString(arr));

String[] strArr = {"hello", "world"};
System.out.println(Arrays.toString(strArr));

输出为

[9, 8, 3, 4]
[hello, world]

如果不使用Arrays.toString,直接输出数组自身,即代码改为:

int[] arr = {9,8,3,4};
System.out.println(arr);

String[] strArr = {"hello", "world"};
System.out.println(strArr);

则输出会变为如下所示:

[I@1224b90
[Ljava.lang.String;@728edb84

这个输出就难以阅读了,@后面的数字表示的是内存的地址。

 

2.数组排序 - 基本类型

排序是一个非常常见的操作,同toString一样,对每种基本类型的数组,Arrays都有sort方法(boolean除外),如:

public static void sort(int[] a)
public static void sort(double[] a)

排序按照从小到大升序排,看个例子:

int[] arr = {4, 9, 3, 6, 10};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr));

输出为:

[3, 4, 6, 9, 10]

数组已经排好序了。

sort还可以接受两个参数,对指定范围内的元素进行排序,如:

public static void sort(int[] a, int fromIndex, int toIndex)

包括fromIndex位置的元素,不包括toIndex位置的元素,如:

int[] arr = {4, 9, 3, 6, 10};
Arrays.sort(arr,0,3);
System.out.println(Arrays.toString(arr));

输出为:

[3, 4, 9, 6, 10]

只对前三个元素排序。

 

相关文章
Arrays.asList、ArrayList.subList使用规范
Arrays.asList、ArrayList.subList使用规范
|
3月前
|
存储 安全 Java
Java数组(Arrays)详解
Java 中的数组是一种用于存储固定数量同类型数据的高效数据结构,支持连续内存存储和随机访问。数组可以声明并初始化,通过索引访问和修改元素,获取长度,使用循环遍历,支持多维形式,并可通过 `Arrays` 类的方法进行复制和排序。数组具有固定大小和类型安全的特点,但需注意越界等问题。灵活运用数组能显著提升编程效率。
158 9
|
7月前
|
算法 Java 知识图谱
arrays.sort
arrays.sort
|
8月前
|
Java 索引
剖析一下Arrays的用法
剖析一下Arrays的用法
75 0
|
Java 编译器 索引
深入解析Java中的数组复制:System.arraycopy、Arrays.copyOf和Arrays.copyOfRange
当涉及到在Java中处理数组时,有许多方法可供选择,其中一些包括`System.arraycopy()`、`Arrays.copyOf()`和`Arrays.copyOfRange()`。这些方法允许您在不同的数组之间复制数据,但它们之间有一些细微的差异。在本篇博客文章中,我们将深入探讨这些方法,以便您了解何时使用它们以及如何正确使用它们。
597 1
|
Java
Map集合详解及Collections方法和Arrays方法
Map集合详解及Collections方法和Arrays方法
66 0
|
算法 Java
Arrays 的二分查找
Arrays 的二分查找
101 0
|
缓存 安全 算法
ArrayList 可以完全替代数组吗?
在前面的文章里],我们学习了很多数据结构与算法思想。在实际的业务开发中,往往不需要我们手写数据结构,而是直接使用标准库的数据结构 / 容器类。 在后续的文章里,我们将以 Java 语言为例,分析从 ArrayList 到 LinkedHashMap 等一系列标准库容器类,最后再有一篇总结回顾,请关注。
140 0
Arrays.asList() 和 new ArrayList() 的区别(详解)
Arrays.asList() 和 new ArrayList() 的区别(详解)
290 0
Arrays.asList() 和 new ArrayList() 的区别(详解)
|
存储 算法
LeetCode 350. 两个数组的交集 II ntersection of Two Arrays II
LeetCode 350. 两个数组的交集 II ntersection of Two Arrays II