![](https://img-blog.csdnimg.cn/direct/f395e156ba5a4da0b8cb1a9836cff037.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java基础语法
文章平均质量分 95
java基础语法的知识详细整理与对应知识点的例题,用于初学者的学习或者小白的复习
酷小洋
编程小白,软件工程专业在校生,学习方向:Java(主要)、python、算法、数据库、软件开发、软件测试等。作为一名软件工程专业的学生,热衷于学习不同的编程语言,并不断提升在算法设计、数据库管理、软件开发和软件测试方面的技能。渴望能够成为一名熟练且多才多艺的软件工程师,能够适应行业不断变化的需求。
展开
-
【IO流系列】PrintStream 和 PrintWriter 打印流
PrintStream 和 PrintWriter 都是 Java 中用于输出数据的打印流类,它们分别位于 java.io 包中。- PrintStream 是字节打印流类,继承自 OutputStream 类。- PrintWriter 是字符打印流类,继承自 Writer 类。原创 2024-03-01 03:23:35 · 1314 阅读 · 0 评论 -
【IO流系列】ObjectStream 序列化流与反序列化流
Java 提供了一种对象**序列化**的机制。用一个字节序列可以表示一个对象,该字节序列包含该`对象的数据`、`对象的类型`和`对象中存储的属性`等信息。字节序列写出到文件之后,相当于文件中**持久保存**了一个对象的信息。 反之,该字节序列还可以从文件中读取回来,重构对象,对它进行**反序列化**。`对象的数据`、`对象的类型`和`对象中存储的数据`信息,都可以用来在内存中创建对象。原创 2024-03-01 00:40:54 · 1135 阅读 · 0 评论 -
【IO流系列】ConvertStream 转换流
转换流是 Java 中用于在字节流和字符流之间进行转换的一种特殊流。在处理数据时,有时候需要将字节流转换为字符流或字符流转换为字节流,这时就可以使用转换流来实现这种转换。转换流通常用于处理不同类型的数据,比如将字节流转换成字符流,或者将字符流转换成字节流。原创 2024-02-29 20:44:25 · 860 阅读 · 0 评论 -
【IO流系列】BufferedStream 缓冲流
`缓冲流`(Buffered stream)是指在输入输出流的基础上加入了缓冲机制,通过缓冲来提高读写性能的一种流。在进行数据读写时,缓冲流会先将数据暂存在`缓冲区`中,当`缓冲区`满了或者达到一定条件时才会将数据写入到文件或从文件中读取数据,这样就减少了实际的读写次数,提高了读写效率。使用缓冲流可以有效地减少对磁盘的访问次数,避免频繁的IO操作,从而改善程序的性能。原创 2024-02-29 01:50:27 · 1242 阅读 · 0 评论 -
【IO流系列】字符流练习(拷贝、文件加密、修改文件数据)
字符集中拷贝、文件加密、修改文件数据的练习,有详细的注释、解析原创 2024-02-28 23:07:44 · 1186 阅读 · 0 评论 -
【IO流系列】FileWriter 字符输出流
`java.io.FileWriter `类是写出字符到文件的便利类。构造时使用系统默认的字符编码和默认字节缓冲区。`FileWriter` 是用于写入字符数据到文件的字符输出流。原创 2024-02-27 23:07:05 · 846 阅读 · 0 评论 -
【IO流系列】FileReader 字符输入流
`FileReader `是 Java 中的字符输入流,用于从文件中读取字符数据。它继承自 `InputStreamReader `类,实现了 `Closeable` 接口。`FileReader `主要用于读取文本文件的内容,一次读取一个字符或者一个字符数组。原创 2024-02-27 22:39:06 · 867 阅读 · 0 评论 -
【IO流系列】编码和解码
编码和解码是在数据传输、存储和处理过程中常见的概念,用于将数据从一种形式转换为另一种形式。在计算机科学领域中,编码(Encoding)指的是将数据转换为另一种格式的过程,而解码(Decoding)则是将已编码数据还原为原始格式的过程。原创 2024-02-27 21:19:54 · 998 阅读 · 0 评论 -
【IO流系列】字符集
字符集是一种将字符映射到数字编码的规则集合,用于在计算机中表示和存储文本数据。不同的字符集定义了不同字符与数字编码之间的对应关系,以支持不同语言的文字、符号和特殊字符。原创 2024-02-27 20:45:43 · 960 阅读 · 0 评论 -
【IO流系列】IOException IO流异常
`IOException(Input/Output Exception,输入/输出异常)`是 Java 编程中常见的异常类型之一。它是 java.io 包中定义的一个异常类,通常用于处理输入/输出操作时可能发生的异常情况。`IOException `表示在进行输入和输出操作时发生了异常,例如文件读写时遇到问题、网络通信中出现异常等。它是一个 checked 异常,意味着在编写代码时必须`显式处理或抛出`该异常,以避免编译错误。原创 2024-02-18 17:03:45 · 2250 阅读 · 0 评论 -
【IO流系列】FileInputStream 字节输入流
FileInputStream 是 Java IO 包中的一个类,它是字节输入流的一种。它用于从文件中读取数据,以字节为单位进行读取。原创 2024-02-18 17:03:14 · 1516 阅读 · 0 评论 -
【IO流系列】FileOutputStream 字节输出流
`FileOutputStream` 是 Java 中用于向文件写入字节数据的输出流类。它用于创建一个文件输出流,该流用于将数据写入文件。原创 2024-02-17 16:23:14 · 1631 阅读 · 0 评论 -
【IO流系列】32.IO流
`IO(Input/Output)流`是计算机程序用于与外部设备进行数据交换的一种抽象概念。它是计算机输入输出操作的一种方式,常见于文件和网络通信等场景。IO流可以分为输入流和输出流两种类型。输入流用于从外部设备(如键盘、文件、网络等)读取数据到程序中,而输出流则用于将程序中的数据写入到外部设备中。原创 2024-02-17 14:20:11 · 970 阅读 · 0 评论 -
31.File文件
`java.io.File` 是 Java 中用于表示文件或目录的类。它提供了操作文件和目录的方法,例如创建、删除、重命名等。File 类中的对象可以用来访问文件的属性,如文件路径、名称、大小等。原创 2024-02-15 14:41:18 · 919 阅读 · 0 评论 -
30. 异常
在Java中,错误(Error)类和异常(Exception)类都是继承自Throwable类,用于表示程序中出现的问题或异常情况。我们平常说的异常就是指`Exception`,因为这类异常一旦出现,我们就要对代码进行更正,修复程序。原创 2024-02-14 18:31:07 · 913 阅读 · 0 评论 -
29.方法引用
方法引用是 Java 编程语言中的一种特性,它提供了一种简洁的语法来直接引用现有的方法。方法引用可以被认为是 Lambda 表达式的一种缩写形式,用于将方法作为参数传递或在函数式接口中使用。方法引用可以简化代码,使得代码更加易读和模块化。它经常用于函数式接口、流操作和方法链式调用等场景。原创 2024-02-14 00:49:16 · 1210 阅读 · 0 评论 -
28.Stream流
Stream流是Java 8引入的一种新的数据处理方式,它可以用来处理集合(包括单列集合和双列集合)和数组中的数据。它提供了一种优雅、声明式的方式来对数据进行操作和处理,简化了对集合和数组的遍历、过滤、映射、排序等操作。原创 2024-02-13 20:22:13 · 943 阅读 · 0 评论 -
27. 不可变集合
不可变集合是指一旦创建就不能被修改的集合对象。在不可变集合中,所有的操作都不会对原始集合对象进行更改,而是返回一个新的集合对象。原创 2024-02-13 12:41:56 · 952 阅读 · 0 评论 -
26. 可变参数和Collection集合工具类
可变参数(Variable Arguments)是指在参数列表中允许传入不定个数的参数。在许多编程语言中,可变参数通常用于传递相同类型的参数,并且允许传入任意个数的参数。`Collections` 是 Java 编程语言中提供的一个集合工具类,位于 `java.util` 包中。它提供了一系列静态方法,用于对集合进行常见的操作和算法实现。原创 2024-02-09 14:43:45 · 1279 阅读 · 0 评论 -
【集合系列】TreeMap 集合
TreeMap 是 Java 中的一个集合类,它实现了 SortedMap 接口。它是基于红黑树的数据结构实现的,它能够保持其中的元素处于有序状态。原创 2024-02-08 22:22:21 · 944 阅读 · 0 评论 -
【集合系列】LinkedHashMap 集合
LinkedHashMap 是 Java 中的一种特殊类型的 HashMap,它继承自 HashMap 类,并实现了 Map 接口。它是一个有序的集合,它保留了元素插入的顺序,并且允许使用它们的插入顺序进行迭代。与普通的 HashMap 不同,LinkedHashMap 使用了一个双向链表来维护元素的插入顺序。这个链表将所有的条目按照插入的顺序连接在一起。这样一来,通过迭代链表,我们可以遍历 LinkedHashMap 这个有序集合。原创 2024-02-08 17:06:15 · 915 阅读 · 0 评论 -
【集合系列】HashMap 集合
HashMap 是 Java 中的一种集合类,它实现了 Map 接口。HashMap 使用键值对存储数据,每个键值对被称为一个 Entry(条目)。HashMap 使用哈希表来存储数据,因此能够在 O(1) 时间复杂度下进行插入、删除和查找操作。原创 2024-02-08 14:25:20 · 903 阅读 · 0 评论 -
【集合系列】Map 双列集合
Map是Java中的一种数据结构,用于存储键值对(key-value pair)。它是一个接口,实现了将键映射到值的功能。Map接口是一个泛型接口,可以指定键和值的类型。原创 2024-02-07 22:17:47 · 803 阅读 · 0 评论 -
【集合系列】TreeSet 集合
TreeSet是Java中的一个有序集合,它实现了Set接口。它使用红黑树数据结构来存储元素,并且保证元素按照升序排列。每个元素都必须是可比较的,或者在创建TreeSet时提供一个定制的Comparator来比较元素。原创 2024-02-05 22:35:36 · 864 阅读 · 4 评论 -
【集合系列】LinkedHashSet 集合
LinkedHashSet是Java集合框架中的一种集合实现,它是HashSet和LinkedHashMap的结合体。它通过使用哈希表和双向链表来实现元素的存储和维护插入顺序。原创 2024-02-05 18:21:43 · 850 阅读 · 0 评论 -
【集合系列】HashSet 集合
HashSet是Java中的一个集合类,它实现了Set接口。HashSet基于哈希表实现,其中的元素没有固定的顺序,且不允许包含重复的元素。原创 2024-02-05 18:01:27 · 908 阅读 · 0 评论 -
【集合系列】Set集合
Set(集合)是一种不允许重复元素且无序的数据结构。它是许多编程语言中的内置数据类型,用于存储一组唯一的元素。与列表或数组不同,集合中的元素没有特定的顺序,并且不能通过索引访问。原创 2024-02-05 14:23:22 · 1102 阅读 · 0 评论 -
25.泛型
泛型是Java编程语言的一项重要功能,它允许开发人员在定义类、接口和方法时使用类型参数。使用泛型可以实现类型的参数化,使代码更加灵活和可重用。原创 2024-02-02 13:08:53 · 2420 阅读 · 0 评论 -
【集合系列】LinkedList集合
LinkedList 是 Java 中的一种集合类,它实现了 List 接口。它是一个双向链表,每个元素都包含指向前一个元素和后一个元素的引用。LinkedList 允许快速插入和删除元素,但访问特定元素的效率相对较低。LinkedList集合:底层数据结构是双链表,查询慢,增删快,但是如果操作的是首尾元素,速度也是极快的原创 2024-02-01 13:35:13 · 793 阅读 · 0 评论 -
【集合系列】List集合
List是Java中一种常用的数据结构,它是一种有序的集合,可以存储任意类型的对象。List允许重复的元素,并且可以根据索引位置访问和操作元素。它提供了一系列方法来添加、删除、获取和修改元素,以及其他一些常见的操作,比如查找、排序等。List是一个接口,Java提供了多个实现List接口的类,常见的有ArrayList和LinkedList。原创 2024-01-30 10:33:29 · 850 阅读 · 0 评论 -
24.集合的遍历(单列集合、双列集合)
迭代器遍历是一种在编程中常用的集合遍历方式。迭代器是一种对象,用于按顺序访问集合中的元素,并且可以进行元素的增删操作。迭代器提供了一种统一的访问集合元素的方式,不依赖于集合的具体实现。增强for循环(Enhanced for Loop),也被称为for-each循环,是Java中一种用于遍历集合或数组元素的简化循环结构。它提供了一种更简洁、易读的方式来遍历集合中的元素,无需手动使用索引或迭代器。Lambda表达式是Java 8引入的一种函数式编程的特性,它提供了一种更简洁、灵活的方式来表示匿名函数。原创 2024-01-28 18:18:18 · 1328 阅读 · 0 评论 -
【集合系列】Collection单列集合
在 Java 集合框架中,`Collection` 是一个接口,它代表了一组对象的集合。`Collection` 接口是所有集合类的根接口,定义了集合的基本操作和功能。`Collection` 接口有多个继承接口,包括 `List`、`Set` 和 `Queue` 等。这些子接口扩展了 `Collection` 接口,提供了更多特定类型集合的操作。例如,`List` 接口表示一个有序的集合,允许重复的元素;`Set` 接口表示一个无序且不允许重复元素的集合;`Queue` 接口表示一个先进先出的队列。原创 2024-01-28 16:25:49 · 757 阅读 · 0 评论 -
23. 集合类
为了在程序中保存数目不确定的对象,Java提供了一系列特殊的类,这些类可以存储任意类型的对象,并且长度可变,这些类统称为集合。集合类位于`java.util`包中,使用时必须导包。Java 集合框架是用于存储、操作和处理数据集合的一组类和接口。它提供了一种灵活、有效和方便的方式来管理数据。原创 2024-01-28 15:59:44 · 577 阅读 · 0 评论 -
22.Lambda 表达式
Lambda 表达式是一种在编程中用来表示匿名函数的简洁语法。它是基于函数式编程风格的一种特性,最初在Java 8中引入。Lambda 表达式允许开发者将函数作为方法参数传递或者以内联的方式定义,并且可以使用函数式接口进行类型推断。原创 2024-01-26 21:14:28 · 975 阅读 · 0 评论 -
21.Arrays类
Arrays类是Java中的一个工具类,位于java.util包中。它提供了一组静态方法,用于操作数组。通过Arrays类,我们可以对数组进行复制、填充、排序以及查找等常见操作。原创 2024-01-26 19:53:41 · 1192 阅读 · 0 评论 -
20.包装类
Java包装类是一组提供与基本数据类型(如 int、double、boolean 等)对应的对象形式的类。它们位于java.lang包中,提供了将基本数据类型转换为对象的功能。原创 2024-01-22 08:00:00 · 1999 阅读 · 0 评论 -
19. JDK8以后的时间类(Date类、日期格式化类、日历类、工具类)
ZoneID类是Java中的一个类,位于java.time包中,用于表示时区的标识符。Instant类是Java中的一个类,位于java.time包中,用于表示时间戳。时间戳是距离1970年1月1日UTC时间的秒数或纳秒数。ZoneDateTime类是Java 8中的一个日期和时间类,它表示带有时区信息的日期和时间。DateTimeFormatter类是Java 8中的一个日期和时间格式化类,它用于将日期和时间对象格式化为字符串,或将字符串解析为日期和时间对象。原创 2024-01-21 20:04:43 · 1221 阅读 · 0 评论 -
18.JDK7以前的时间类(Date、SimpleDateFormat、Calendar)
Date类是Java中的一个内置类,用于表示日期和时间。它位于java.util包中。Date类提供了对日期和时间的处理和操作,包括获取当前日期和时间、比较日期和时间、格式化日期和时间等功能。`SimpleDateFormat`类是Java中的一个类,位于java.text包中,用于将日期和时间格式化为指定的字符串,或者将字符串解析为对应的日期和时间。Calendar类是Java中的一个抽象类,位于java.util包中,用于处理日期和时间的各个方面,如年、月、日、小时、分钟和秒等。原创 2024-01-21 18:26:13 · 1136 阅读 · 0 评论 -
17.正则表达式
正则表达式是一种用来匹配和操作字符串的强大工具。它是一种描述字符模式的方式,能够帮助你在文本中查找、替换和提取特定的字符序列。原创 2024-01-19 20:39:32 · 1678 阅读 · 0 评论 -
【API】16. 常用API
关于部分常用API的整理。API(Application Programming Interface)是一组为开发人员提供的预定义的类、接口、方法和常量的集合,用于构建Java应用程序。原创 2024-01-16 22:29:51 · 1174 阅读 · 0 评论