14天Java基础学习——第10天:集合框架(基础)

集合框架概述

Java集合框架是一组用于存储和处理对象集合的接口和类。它提供了一种统一的架构来存储和操作数据集合。集合框架的主要优点是它提供了一种统一的接口来处理不同的数据集合,使得数据集合的操作更加简单和方便。

集合框架的主要接口
接口名称描述
Collection所有单列集合的根接口,定义了集合的基本操作。
List一个有序的集合,可以包含重复的元素。
Set一个不允许重复的集合。
SortedSet一个可以排序的集合。
NavigableSet一个可以导航的集合,支持更复杂的查询操作。
Queue一个队列,遵循先进先出的原则。
Deque一个双端队列,支持在两端进行元素的插入和移除。

List集合

ArrayList

ArrayList是基于动态数组实现的,它允许对元素进行快速随机访问。ArrayList不是同步的。

import java.util.ArrayList;

public class ArrayListExample {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Python");
        list.add("C++");
        
        System.out.println("ArrayList: " + list);
        
        list.remove("Python");
        System.out.println("After removing Python: " + list);
        
        String element = list.get(1); // 获取索引为1的元素
        System.out.println("Element at index 1: " + element);
    }
}
LinkedList

LinkedList是基于链表实现的,它允许对元素进行快速的插入和删除操作。LinkedList不是同步的。

import java.util.LinkedList;

public class LinkedListExample {
    public static void main(String[] args) {
        LinkedList<String> list = new LinkedList<>();
        list.add("Java");
        list.add(1, "Python"); // 在索引1的位置插入Python
        list.addLast("C++");
        
        System.out.println("LinkedList: " + list);
        
        list.remove("Python");
        System.out.println("After removing Python: " + list);
        
        String element = list.get(1); // 获取索引为1的元素
        System.out.println("Element at index 1: " + element);
    }
}

Set集合

HashSet

HashSet是基于哈希表实现的,它不允许集合中存在重复的元素。HashSet不是同步的。

import java.util.HashSet;

public class HashSetExample {
    public static void main(String[] args) {
        HashSet<String> set = new HashSet<>();
        set.add("Java");
        set.add("Python");
        set.add("Java"); // 重复元素不会被添加
        
        System.out.println("HashSet: " + set);
        
        set.remove("Python");
        System.out.println("After removing Python: " + set);
    }
}
TreeSet

TreeSet是基于红黑树实现的,它可以确保元素处于排序状态。TreeSet不是同步的。

import java.util.TreeSet;

public class TreeSetExample {
    public static void main(String[] args) {
        TreeSet<String> set = new TreeSet<>();
        set.add("Java");
        set.add("Python");
        set.add("C++");
        
        System.out.println("TreeSet: " + set);
        
        set.remove("Python");
        System.out.println("After removing Python: " + set);
    }
}

迭代器与增强for循环

迭代器(Iterator)

迭代器是一种设计模式,用于遍历集合中的元素。Java集合框架中的迭代器提供了一种统一的方式来遍历集合。

import java.util.ArrayList;
import java.util.Iterator;

public class IteratorExample {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Python");
        list.add("C++");
        
        Iterator<String> iterator = list.iterator();
        while (iterator.hasNext()) {
            String element = iterator.next();
            System.out.println(element);
        }
    }
}
增强for循环(Enhanced for loop)

增强for循环是Java 5引入的一种简化循环结构,用于遍历数组和集合。

import java.util.ArrayList;

public class EnhancedForLoopExample {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Python");
        list.add("C++");
        
        for (String element : list) {
            System.out.println(element);
        }
    }
}

总结

通过本章节的学习,我们了解了Java集合框架的基本概念和主要接口,包括CollectionListSet等。我们学习了ArrayListLinkedList两种List集合的实现,以及HashSetTreeSet两种Set集合的实现。我们还探讨了迭代器和增强for循环的使用,这两种方法都是遍历集合的常用方式。通过实际的例子代码,我们能够更好地理解和掌握这些概念和操作。集合框架是Java编程中非常重要的一部分,掌握它对于编写高效、可读的代码至关重要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码上分享

创作不易,感谢各位看官

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值