为什么我们需要 Java 中的集合框架?

javaobject oriented programmingprogramming更新于 2024/11/9 4:28:17

数组是连续内存分配中相同类型元素的集合。它们用于表示数字、字符串等列表。

语法

<element-type>[] <array-name> = new <element-type>[<array-size>];

算法

要实现数组,请按照以下步骤操作

  • 步骤 1 − 选择应该事先仔细考虑适合每个将填充所需数组的单独元素的适当数据类型。

  • 步骤 2 − 此外,通过考虑特定使用要求来确定所需的容量将有助于选择准确且最佳的数组大小。

  • 步骤 3− 声明一个数组变量。

  • 步骤 4 − 访问数组的各个元素。只需使用索引运算符 [] 并执行任何必要的操作即可。

  • 步骤 5 − 对数组中包含的每个元素执行相关操作。可以使用循环来系统地遍历它们并执行所需的任务。

示例

public class Main {
   public static void main(String[] args) {
      int[] marks = new int[3];
      marks[0] = 75;
      marks[1] = 20;
      marks[2] = 87;
      for (int i = 0; i < marks.length; i++) {
         System.out.println("Marks of student " + (i + 1) + ": " + marks[i]);
      }
      int sum = 0;
      for (int i = 0; i < marks.length; i++) {
         sum += marks[i];
      }
      double average = (double) sum / marks.length;
      System.out.println("Average marks: " + average);
   }
}

输出

Marks of student 1: 75
Marks of student 2: 20
Marks of student 3: 87
Average marks: 60.66

java 中数组的局限性

  • 数组的大小是固定的 − 数组的大小在运行时不能增加或减少。

  • 数组的内存效率不高 − 如果添加到数组的元素数量小于已分配的大小,则可能会浪费内存。

  • 数组中没有可用的内置方法 − 数组没有任何内置方法来执行添加、搜索等常见操作。

  • 数组仅保存同类数据元素 − 数组只能存储相同类型的元素。

  • 没有底层数据结构 − 数组的概念不是使用标准数据结构实现的。因此,没有现成的方法支持。

java 中的集合框架

在 Java 中,框架旨在提供一种标准化的方式,或者我们可以说它通过利用一组抽象类和接口以及其他组件来提供现成的架构来解决特定问题或任务。

集合是作为单个实体的一组单个对象。 Java 的集合框架中提供了几种不同的类和接口,它们提供了表示集合的有效方法。 可以通过 java.util 中的包访问流行的选择,例如 ArrayList、LinkedList、HashSet 和 TreeSet。

语法

语法取决于特定的类,例如 -

ArrayList

ArrayList<T>列表 = 新的 ArrayList<T>();

LinkedList

LinkedList<T> 列表 = 新的 LinkedList<T>();

算法

要实现,请按照以下步骤操作 -

  • 步骤 1 - 根据程序要求选择适当的集合类。

  • 步骤 2 - 导入集合所需的类。

  • 步骤 3 - 声明集合类的变量。

  • 步骤 4 - 使用适当的构造函数实例化集合。

  • 步骤 5 - 根据要求使用方法。

  • 步骤 6 - 根据需要在程序中使用集合。

示例

import java.util.ArrayList;
public class Main {
   public static void main(String[] args) {
      ArrayList<String> names = new ArrayList<String>();
      names.add("Apoorva");
      names.add("Anamika");
      names.add("Supriya");
      System.out.println("Names: " + names);
      names.remove(1);
      names.set(1, "Neha");
      System.out.println("Names: " + names);
      for (String name : names) {
         System.out.println("Name: " + name);
      }
   }
}

输出

Names: [Apoorva, Anamika, Supriya]
Names: [Apoorva, Neha, Supriya]
Name: Apoorva
Name: Neha
Name: Supriya

因此,数组的缺点或限制可以通过使用 Java 集合框架来克服。因此我们需要一个集合框架。该框架的优势如下: -

  • 集合的可增长特性 - 现在,大小对集合来说不是问题,因为它具有可增长特性,我们可以在运行时增加或减少大小。

  • 集合具有内存效率 - 可以根据需求增加或减少元素,因此从内存角度来看,建议使用集合。

  • 集合中提供内置方法 - 集合具有许多内置方法来执行常见操作,如添加、搜索等。

  • 集合包含同质和异构数据元素 - 集合可以包含相同和不同类型的元素。

  • 标准数据结构 - 集合基于标准数据结构,因此每个集合都支持现成的方法可用。

结论

显然,数组和集合都表现出不同的优点和缺点。程序的具体要求对于决定使用它们至关重要。在数据大小已预先确定且需要快速访问元素的情况下,数组被证明更合适。集合更适合于您需要在数据结构中具有更多灵活性并希望使用内置方法来操作数据的情况。


相关文章


有用资源