JavaStringBuffer和StringBuilder类
Java StringBuffer 和 StringBuilder 类 当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。 在使用 StringBuffer 类时,每次都会对 StringBuffer 对象本身进行操作,而不是生成新的对象,所以如果需要对字符串进行修改推荐使用 StringBuffer。StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。实例 public class RunoobTest{public static void main(String[] args){StringBuilder sb = new...
JavaObject类
Java Object 类Java Object 类是所有类的父类,也就是说 Java 的所有类都继承了 Object,子类可以使用 Object 的所有方法。 Object 类位于 java.lang 包中,编译时会自动导入,我们创建一个类时,如果没有明确继承一个父类,那么它就会自动继承 Object,成为 Object 的子类。Object 类可以显式继承,也可以隐式继承,以下两种方式是一样的:显式继承:public class Runoob extends Object{ }隐式继承:public class Runoob { }类的构造函数 序号构造方法 & 描述 1 Object()构造一个新对象。 类的方法 序号方法 & 描述 1protected Object clone()创建并返回一个对象的拷贝 2boolean equals(Object obj)比较两个对象是否相等 3protected void finalize()当 GC (垃圾回收器)确定不存在对该对象的有更多引用时,由对象的垃圾回收器调用此方法。 4Class<?>...
JavaNumber&Math类
Java Number & Math 类一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、int、long、double 等。 实例 int a = 5000;float b = 13.65f;byte c = 0x4a; 然而,在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情形。为了解决这个问题,Java 语言为每一个内置数据类型提供了对应的包装类。所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类。 包装类 基本数据类型 Boolean boolean Byte byteShort shortInteger intLong longCharacter charFloat floatDouble double 这种由编译器特别支持的包装称为装箱,所以当内置数据类型被当作对象使用的时候,编译器会把内置类型装箱为包装类。相似的,编译器也可以把一个对象拆箱为内置类型。Number...
JavaMySQL连接
Java MySQL 连接 本章节我们为大家介绍 Java 如何使用 使用 JDBC 连接 MySQL 数据库。Java 连接 MySQL 需要驱动包,最新版下载地址为:http://dev.mysql.com/downloads/connector/j/,解压后得到 jar 库文件,然后在对应的项目中导入该库文件。 你可以下载本站提供的 jar 包:mysql-connector-java-5.1.39-bin.jar本实例使用的是 Eclipse,导入 jar 包: MySQL 8.0 以上版本的数据库连接有所不同: 1、MySQL 8.0 以上版本驱动包版本 mysql-connector-java-8.0.16.jar。2、com.mysql.jdbc.Driver 更换为 com.mysql.cj.jdbc.Driver。MySQL 8.0 以上版本不需要建立 SSL 连接的,需要显示关闭。allowPublicKeyRetrieval=true 允许客户端从服务器获取公钥。 最后还需要设置...
JavaLinkedList
Java LinkedList Java 集合框架链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的地址。链表可分为单向链表和双向链表。一个单向链表包含两个值: 当前节点的值和一个指向下一个节点的链接。 一个双向链表有三个整数值: 数值、向后的节点链接、向前的节点链接。 Java LinkedList(链表) 类似于 ArrayList,是一种常用的数据容器。与 ArrayList 相比,LinkedList 的增加和删除的操作效率更高,而查找和修改的操作效率较低。 以下情况使用 ArrayList : 频繁访问列表中的某一个元素。只需要在列表末尾进行添加和删除元素操作。以下情况使用 LinkedList : 你需要通过循环迭代来访问列表中的某些元素。需要频繁的在列表开头、中间、末尾等位置进行添加和删除元素操作。LinkedList 继承了 AbstractSequentialList 类。LinkedList 实现了 Queue 接口,可作为队列使用。LinkedList 实现了 List...
JavaIterator(迭代器)
Java Iterator(迭代器) Java 集合框架 Java迭代器(Iterator)是 Java 集合框架中的一种机制,是一种用于遍历集合(如列表、集合和映射等)的接口。它提供了一种统一的方式来访问集合中的元素,而不需要了解底层集合的具体实现细节。 Java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代 ArrayList 和 HashSet 等集合。Iterator 是 Java 迭代器最简单的实现,ListIterator 是 Collection API 中的接口, 它扩展了 Iterator 接口。 迭代器接口定义了几个方法,最常用的是以下三个: next() - 返回迭代器的下一个元素,并将迭代器的指针移到下一个位置。hasNext() - 用于判断集合中是否还有下一个元素可以访问。remove() - 从集合中删除迭代器最后访问的元素(可选操作)。Iterator 类位于 java.util 包中,使用前需要引入它,语法格式如下:import java.util.Iterator; // 引入...
JavaHashSet
Java HashSet Java 集合框架 HashSet 基于 HashMap 来实现的,是一个不允许有重复元素的集合。 HashSet 允许有 null 值。HashSet 是无序的,即不会记录插入的顺序。HashSet 不是线程安全的, 如果多个线程尝试同时修改 HashSet,则最终结果是不确定的。 您必须在多线程访问时显式同步对 HashSet 的并发访问。 HashSet 实现了 Set 接口。 HashSet 中的元素实际上是对象,一些常见的基本类型可以使用它的包装类。基本类型对应的包装类表如下: 基本类型引用类型 booleanBooleanbyteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacter HashSet 类位于 java.util 包中,使用前需要引入它,语法格式如下:import java.util.HashSet; // 引入 HashSet 类以下实例我们创建一个 HashSet 对象...
JavaHashMap
Java HashMap Java 集合框架 HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步。 HashMap 是无序的,即不会记录插入的顺序。 HashMap 继承于AbstractMap,实现了 Map、Cloneable、java.io.Serializable 接口。 HashMap 的 key 与 value 类型可以相同也可以不同,可以是字符串(String)类型的 key 和 value,也可以是整型(Integer)的 key 和字符串(String)类型的 value。 HashMap 中的元素实际上是对象,一些常见的基本类型可以使用它的包装类。基本类型对应的包装类表如下: 基本类型引用类型 booleanBooleanbyteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacter HashMap 类位于...
JavaCharacter类
Java Character 类Character 类用于对单个字符进行操作。Character 类在对象中包装一个基本类型 char 的值 实例 char ch = ‘a’; // Unicode 字符表示形式char uniChar = ‘\u039A’; // 字符数组char[] charArray ={ ‘a’, ‘b’, ‘c’, ‘d’, ‘e’ }; 然而,在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情况。为了解决这个问题,Java语言为内置数据类型char提供了包装类Character类。 Character类提供了一系列方法来操纵字符。你可以使用Character的构造方法创建一个Character类对象,例如: Character ch = new...
JavaArrayList
Java ArrayList Java 集合框架ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。 ArrayList 继承了 AbstractList ,并实现了 List 接口。 ArrayList 类位于 java.util 包中,使用前需要引入它,语法格式如下: import java.util.ArrayList; // 引入 ArrayList 类 ArrayList objectName =new ArrayList<>(); // 初始化 E: 泛型数据类型,用于设置 objectName 的数据类型,只能为引用数据类型。objectName: 对象名。ArrayList 是一个数组队列,提供了相关的添加、删除、修改、遍历等功能。 添加元素ArrayList 类提供了很多有用的方法,添加元素到 ArrayList 可以使用 add() 方法:实例import java.util.ArrayList; public class...