Java中的泛型(Generics)是JDK 1.5引入的一项重要功能,它允许你在编译时期定义类、接口和方法的类型参数。泛型的主要作用是提高代码的可重用性和类型安全。
以下是泛型的一些主要优点:
下面是一个简单的Java泛型示例,演示了如何使用泛型来创建一个通用的Stack类:
public class Stack<T> {
private T[] stackArray;
private int top;
public Stack(int size) {
stackArray = (T[]) new Object[size];
top = -1;
}
public void push(T item) {
if (top < stackArray.length - 1) {
top++;
stackArray[top] = item;
} else {
System.out.println("Stack is full.");
}
}
public T pop() {
if (top >= 0) {
T item = stackArray[top];
stackArray[top] = null;
top--;
return item;
} else {
System.out.println("Stack is empty.");
return null;
}
}
public boolean isEmpty() {
return (top == -1);
}
}
在这个示例中,Stack
类是一个泛型类,它使用类型参数T
来表示栈中存储的元素类型。这使得你可以创建一个可以处理任何类型的栈,如IntegerStack
、StringStack
等,而不需要为每种类型创建单独的类。