【学习总结|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集合框架。

相关推荐
学长毕设8 小时前
基于SpringBoot的实验室资产管理系统
java·spring boot·后端
C^h8 小时前
c++ string
开发语言·c++
raindayinrain9 小时前
c++高性能--原子操作,无锁编程,操作顺序
开发语言·c++·性能优化
学逆向的9 小时前
C++ 合并命名空间
开发语言·c++·网络安全
Zhao-Jichao9 小时前
VS2026 打包 C++ 程序生成 EXE,借助 Installer Project 扩展工具
开发语言·c++
zzu123zsw10 小时前
从臃肿的模板调用到声明式契约:深入 UniHttp 动态代理与多渠道生命周期扩展
java·spring boot·microsoft·unihttp
学逆向的10 小时前
C 局部静态变量
c语言·开发语言·网络安全
大都督会赢的10 小时前
C++第一节课
开发语言·c++
“AI国潮设计-小江”10 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计
开发语言·人工智能·python·prompt·aigc
源码集结号10 小时前
云诊所门诊系统源码,基于SpringBoot+Vue.js架构,支持多租户设计与Docker容器化部署
java·spring boot·源码·医院信息系统·门诊系统·诊所系统