Java 数组
Posted magicalfool
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 数组相关的知识,希望对你有一定的参考价值。
# 数组
### 数组是应用最广泛的数据存储结构。个人理解是一种特殊规则的链表,链表是规则统一的象征。
```java
// 定义
int [] intArray;
// 初始化
intArray = new int[100];
```
> ##### 插入 insert
```java
void insert(Element e);
```
> ##### 删除 delete
```java
boolean delete(Index i);
```
> ##### 更新 update
```java
boolean update(Element e,Index i);
```
> ##### 查找 find
```java
Index find();// 普通查找又叫线性查找
Index binaryFind(); // 二分查找 (有序数组)
```
### java 数组抽象接口
```java
// array
public interface IArray<T>{
// 初始化
void init(int size);
// 插入元素
void insert(T t);
// 添加元素
void add(T t);
// 删除元素
void delete(int index);
// 更新
void update(T oldElem, T newElem);
// 查找
int find(T t);
}
```
#### 实现
```java
package part01_array;
public class NewArray implements IArray<Long> {
private Long[] array;
private int length;
@Override
public void init(int size) {
array = new Long[size];
length = 0;
}
@Override
public void insert(Long aLong) {
}
@Override
public void add(Long aLong) {
this.array[++length] = aLong;
}
@Override
public void delete(int index) {
if (index > length)
return;
for (int i = index; i < length - 1; i++) {
array[index] = array[index + 1];
}
}
@Override
public void update(Long oldElem, Long newElem) {
}
@Override
public int find(Long aLong) {
for (int i = 0; i < length; i++) {
if (array[i] == aLong) {
return i;
}
}
return -1;
}
}
```
以上是关于Java 数组的主要内容,如果未能解决你的问题,请参考以下文章