Java 面向对象:API(接口)与集合(ArrayList)完整攻略
什么是接口
在 Java 编程中,接口是一种抽象类型,它描述了类能做什么而不描述它们是怎么做到的。接口定义了一个类应该有哪些方法,并且不提供这些方法的实现。任何实现这个接口的类都必须提供它定义的方法。
接口的语法如下:
// 定义一个接口
public interface Interface {
// 这是接口中的一个方法声明,它没有提供实现
public void someMethod();
}
接口方法必须是公共的,不能是私有的。虽然接口不能提供方法的实现,但是可以有默认方法。默认方法可以提供实现,如果某个类实现了该接口但没有实现该默认方法,则会使用默认实现。
public interface Interface {
default void someMethod() {
System.out.println("This is a default implementation of the method.");
}
}
什么是集合
在 Java 编程中,集合是用于存储一组对象的容器。不同于数组,集合可以动态添加或删除元素,并且可以动态改变大小。Java 提供了许多不同的集合类来满足不同的需求,最常用的是 ArrayList。
ArrayList
ArrayList 是一个基于数组实现的动态数组,可以存储任意类型的对象。它提供了许多方法来操作元素,比如添加、删除、修改、查找等等。
创建一个 ArrayList 的语法如下:
// 创建一个空的 ArrayList
ArrayList<String> list = new ArrayList<>();
// 创建一个带有初始化元素的 ArrayList
ArrayList<String> list = new ArrayList<>(Arrays.asList("a", "b", "c"));
插入元素:
list.add("d"); // 在末尾添加一个元素
list.add(1, "e"); // 在指定索引位置插入一个元素
删除元素:
list.remove(1); // 删除指定索引位置的元素
list.remove("a"); // 删除指定元素
修改元素:
list.set(1, "f"); // 修改指定索引位置的元素
查找元素:
list.get(1); // 获取指定索引位置的元素
list.indexOf("a"); // 获取指定元素的索引位置,如果不存在则返回 -1
list.contains("a"); // 返回是否包含指定元素
list.isEmpty(); // 返回是否为空
list.size(); // 返回元素个数
示例说明
接口示例
下面是一个实现接口的示例:
interface Shape {
double getArea();
}
class Circle implements Shape {
private double radius;
public Circle(double radius) {
this.radius = radius;
}
public double getArea() {
return Math.PI * radius * radius;
}
}
class Rectangle implements Shape {
private double width;
private double height;
public Rectangle(double width, double height) {
this.width = width;
this.height = height;
}
public double getArea() {
return width * height;
}
}
public class Main {
public static void main(String[] args) {
Shape circle = new Circle(5);
Shape rectangle = new Rectangle(3, 4);
System.out.println("The area of the circle is " + circle.getArea());
System.out.println("The area of the rectangle is " + rectangle.getArea());
}
}
在这个示例中,定义了一个 Shape
接口,它有一个抽象方法 getArea
,没有提供实现。接着定义了两个类实现该接口:Circle
类和 Rectangle
类,分别计算圆和长方形的面积。最后在主函数中创建一个 Circle
对象和一个 Rectangle
对象,调用它们的 getArea
方法来计算面积并输出。
ArrayList 示例
下面是一个 ArrayList 的示例:
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
System.out.println("Initial list: " + list);
list.add(4);
System.out.println("After adding 4: " + list);
list.remove(1);
System.out.println("After removing index 1: " + list);
list.set(0, 5);
System.out.println("After setting index 0 to 5: " + list);
System.out.println("Index of 3: " + list.indexOf(3));
System.out.println("Size of the list: " + list.size());
}
}
在这个示例中,创建了一个 ArrayList
对象 list
,初始元素为 1, 2, 3
。然后依次调用 add
方法添加一个元素,remove
方法删除一个元素,set
方法修改元素,indexOf
方法查找元素索引位置,size
方法获取元素个数,并输出结果。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java面向对象:API(接口)与集合(ArrayList) - Python技术站