Java编写:用泛型写数组的基本操作: 1.插入元素、删除元素,查找元素,返回第i个下标对应的元素。
时间: 2024-10-07 16:07:53 浏览: 38
在Java中,我们可以利用泛型来创建通用的数组操作类,以便处理不同类型的数据。这里是一个简单的例子,展示了如何使用泛型来实现数组的插入、删除、查找和访问元素:
```java
import java.util.ArrayList;
public class ArrayUtils<T> {
private ArrayList<T> array; // 使用ArrayList作为动态数组
public ArrayUtils(int initialCapacity) {
this.array = new ArrayList<>(initialCapacity);
}
// 插入元素
public void insertElement(T element) {
array.add(element);
}
// 删除元素(通过索引)
public void removeElement(int index) {
if (index >= 0 && index < array.size()) {
array.remove(index);
} else {
throw new IndexOutOfBoundsException("Index out of bounds");
}
}
// 查找元素(返回是否存在,不返回值)
public boolean containsElement(T element) {
return array.contains(element);
}
// 返回第i个下标对应的元素(抛出异常如果不存在)
public T getElementAt(int index) {
if (index >= 0 && index < array.size()) {
return array.get(index);
} else {
throw new IndexOutOfBoundsException("Index out of bounds");
}
}
// 获取数组大小(元素个数)
public int size() {
return array.size();
}
}
// 示例用法:
ArrayUtils<String> stringArray = new ArrayUtils<>(5);
stringArray.insertElement("Hello");
System.out.println(stringArray.containsElement("Hello")); // 输出 true
String value = stringArray.getElementAt(0); // 输出 "Hello"
```
在这个例子中,`ArrayUtils`类是一个模板类,T是类型参数,允许我们存储任何类型的对象。需要注意的是,虽然ArrayList提供了一定程度的动态扩容,但这里的泛型数组操作并不直接支持随机访问(如get),因为ArrayList底层是链表结构。
阅读全文