【学习总结|DAY018】Java异常、泛型、集合框架

今天学习了Java集合框架,主要内容包括异常、泛型和集合框架。以下是对学习内容的总结,并辅以代码案例加深理解:

一、异常

异常是程序在编译或执行过程中可能出现的错误,例如数组索引越界、文件不存在等。Java异常体系分为Error和Exception两类,其中Error代表系统级别错误,而Exception才是我们程序员需要关注的异常。

异常处理示例:

java 复制代码
public class ExceptionExample {
    public static void main(String[] args) {
        try {
            int[] arr = {10, 20, 30};
            System.out.println(arr[3]); // ArrayIndexOutOfBoundsException
            System.out.println(10 / 0); // ArithmeticException
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("数组索引越界异常");
        } catch (ArithmeticException e) {
            System.out.println("算术异常");
        } catch (Exception e) {
            System.out.println("其他异常");
        }
    }
}

二、泛型

泛型是Java中的一种特性,用于在编译阶段约束数据类型并进行自动检查,从而避免类型转换异常。泛型可以应用于类、接口和方法,并通过类型变量来指定具体的类型。

泛型示例:

java 复制代码
public class GenericExample {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Python");
        for (String item : list) {
            System.out.println(item);
        }
    }
}

三、集合框架

集合框架是Java中用于存储和操作数据的一组类和接口。主要分为单列集合和双列集合:

  • 单列集合 (Collection):每个元素只包含一个值,例如List和Set。
  • 双列集合 (Map):每个元素包含两个值,即键和值,例如HashMap和TreeMap。

List集合示例:

java 复制代码
public class ListExample {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Python");
        System.out.println("List Size: " + list.size());
        System.out.println("List Contains 'Java': " + list.contains("Java"));
        list.remove("Python");
        System.out.println("List After Removal: " + list);
    }
}

ArrayList和LinkedList的区别示例:

java 复制代码
public class ArrayListLinkedListExample {
    public static void main(String[] args) {
        List<String> arrayList = new ArrayList<>();
        List<String> linkedList = new LinkedList<>();
        
        // 添加元素
        arrayList.add("Java");
        linkedList.add("Python");
        
        // 删除元素
        arrayList.remove(0);
        linkedList.remove(0);
        
        // 查询元素
        System.out.println("ArrayList Index 0: " + arrayList.get(0));
        System.out.println("LinkedList Index 0: " + linkedList.get(0));
    }
}

四、总结

通过今天的学习,我们掌握了Java集合框架的基础知识,并能够根据不同的需求选择合适的集合类型。在后续的学习中,我们将继续深入学习集合框架的更多高级特性,例如Map集合、集合工具类等。

五、学习建议

  • 理解异常的概念和处理方式,避免程序出现运行时错误。
  • 掌握泛型的使用方法,提高代码的可读性和安全性。
  • 熟悉集合框架的体系结构,选择合适的集合类型解决问题。
  • 多进行实践练习,例如设计不同的集合应用场景,加深对集合框架的理解。

希望以上内容能够帮助大家更好地学习Java集合框架。

相关推荐
huohaiyu1 小时前
Hashtable,HashMap,ConcurrentHashMap之间的区别
java·开发语言·多线程·哈希
信奥卷王2 小时前
[GESP202503 五级] 原根判断
java·数据结构·算法
小咕聊编程2 小时前
【含文档+源码】基于SpringBoot的过滤协同算法之网上服装商城设计与实现
java·spring boot·后端
Zz_waiting.2 小时前
Spring 原理
java·spring·spring自动管理
Predestination王瀞潞5 小时前
IO操作(Num22)
开发语言·c++
瓯雅爱分享6 小时前
Java+Vue构建的采购招投标一体化管理系统,集成招标计划、投标审核、在线竞价、中标公示及合同跟踪功能,附完整源码,助力企业实现采购全流程自动化与规范化
java·mysql·vue·软件工程·源代码管理
宋恩淇要努力6 小时前
C++继承
开发语言·c++
沿着路走到底7 小时前
python 基础
开发语言·python
沐知全栈开发8 小时前
C# 委托(Delegate)
开发语言
mit6.8248 小时前
[C# starter-kit] 命令/查询职责分离CQRS | MediatR |
java·数据库·c#