使用 Java 的 DSA - 数组
数组基础知识
数组是一个可以容纳固定数量项目的容器,这些项目应该是相同类型的。大多数数据结构都使用数组来实现其算法。以下是理解数组概念的重要术语
元素 − 存储在数组中的每个项目称为元素。
索引 −数组中元素的每个位置都有一个数字索引,用于标识元素。
数组表示
根据上图所示,以下是需要考虑的重要点。
索引从 0 开始。
数组长度为 8,这意味着它可以存储 8 个元素。
每个元素都可以通过其索引访问。例如,我们可以将索引 6 处的元素作为 9 获取。
基本操作
以下是数组支持的基本操作。
插入 −在给定索引处添加一个元素。
删除 − 删除给定索引处的一个元素。
搜索 − 使用给定索引或按值搜索元素。
更新 − 更新给定索引处的一个元素。
在 java 中,当数组用大小初始化时,它会按以下顺序为其元素分配默认值。
| 数据类型 | 默认值 |
|---|---|
| byte | 0 |
| short | 0 |
| int | 0 |
| long | 0L |
| float | 0.0f |
| double | 0.0d |
| char | '\u0000' |
| boolean | false |
| Object | null |
演示
package com.tutorialspoint.array;
public class ArrayDemo {
public static void main(String[] args){
// 声明一个数组
int intArray[];
// 初始化一个 8 int 数组
// 预留 8 int 的内存
intArray = new int[8];
System.out.println("添加数据前的数组。");
// 显示数组的元素。
display(intArray);
// 操作:插入
// 在数组中添加元素
for(int i = 0; i< intArray.length; i++)
{
// 将 i 的值放置在索引 i 处。
System.out.println("在索引 "+i 处添加 "+i+");
intArray[i] = i;
}
System.out.println();
System.out.println("添加数据后的数组。");
display(intArray);
// 操作:插入
// 任何位置的元素都可以直接更新
int index = 5;
intArray[index] = 10;
System.out.println("更新索引处元素后的数组 " + index);
display(intArray);
// 操作:使用索引进行搜索
// 使用索引搜索元素。
System.out.println("索引处的数据 " + index + ": "+ intArray[index]);
// 操作:使用值进行搜索
// 使用值搜索元素。
int value = 4;
for(int i = 0; i< intArray.length; i++)
{
if(intArray[i] == value ){
System.out.println(value + " Found at index "+i);
break;
}
}
System.out.println("Data at index " + index + ": "+ intArray[index]);
}
private static void display(int[] intArray){
System.out.print("Array : [");
for(int i = 0; i< intArray.length; i++)
{
// 显示索引 i 处元素的值。
System.out.print(" "+intArray[i]);
}
System.out.println(" ]");
System.out.println();
}
}
如果我们编译并运行上述程序,则会产生以下结果 −
添加数据前的数组。 数组:[ 0 0 0 0 0 0 0 0 ] 在索引 0 处添加 0 在索引 1 处添加 1 在索引 2 处添加 2 在索引 3 处添加 3 在索引 4 处添加 4 在索引 5 处添加 5 在索引 6 处添加 6 在索引 7 处添加 7 添加数据后的数组。 数组:[ 0 1 2 3 4 5 6 7 ] 更新索引 5 处的元素后的数组 数组:[ 0 1 2 3 4 10 6 7 ] 索引 5 处的数据:10 在索引 4 处找到 4

