Java

Java 学习记录-Java核心类-字符串和编码、StringBuilder、StringJoiner

核心类 字符串 StringBuilder StringJoiner 包装类型 JavaBean 枚举类 常用工具类 字符串 在Java中,String是一个引用类型,它本身也是一个class,在String内部是通过一个char[]数组表示。 Java字符串的一个重要特点就是字符串不可变。这种不可变性是通过内部的private final char[]字段,以及没有任何修改char[]的方法实现的。 字符串比较 当我们想要比较两个字符串是否相同时,要特别注意,我们实际上是想比较字符串的内容是否相同。必须使用equals()方法而不能用==,因为== 比较的是引用地址。 两个字符串比较,必须总是使用equals()方法。 要忽略大小写比较,使用equalsIgnoreCase()方法。 搜索子串 “Hello”.contains(“ll”); // true “Hello”.indexOf(“l”); // 2 “Hello”.lastIndexOf(“l”); // 3 “Hello”.startsWith(“He”); // true “Hello”.endsWith(“lo”); // true 提取子串 “Hello”.substring(2); // “llo” “Hello”.substring(2, 4); “ll” 去除首尾空白字符 使用trim()方法可以移除字符串首尾空白字符。空白字符包括空格,\t,\r,\n,注意:trim()并没有改变字符串的内容,而是返回了一个新字符串。 另一个strip()方法也可以移除字符串首尾空白字符。它和trim()不同的是,类似中文的空格字符\u3000也会被移除。 String还提供了isEmpty()和isBlank()来判断字符串是否为空和空白字符串: “”.isEmpty(); // true,因为字符串长度为0 ” “.isEmpty(); // false,因为字符串长度不为0 ” \n”.isBlank(); // true,因为只包含空白字符 …

Java 学习记录-Java核心类-字符串和编码、StringBuilder、StringJoiner Read More »

Java 学习记录-面对对象基础

方法 构造方法 方法重载 在一个类中,我们可以定义多个方法。如果有一系列方法,它们的功能都是类似的,只有参数有所不同,那么,可以把这一组方法名做成同名方法。 方法名相同,但各自的参数不同,称为方法重载(Overload)。 注意:方法重载的返回值类型通常都是相同的。 方法重载的目的是,功能类似的方法使用同一名字,更容易记住,因此,调用起来更简单。 继承 instanceof实际上判断一个变量所指向的实例是否是指定类型,或者这个类型的子类。如果一个引用变量为null,那么对任何instanceof的判断都为false。 区分继承和组合 继承是is关系,组合是has关系。 多态与@Override Java的实例方法调用是基于运行时的实际类型的动态调用,而非变量的声明类型。 这个非常重要的特性在面向对象编程中称之为多态。它的英文拼写非常复杂:Polymorphic。 定义:多态是指,针对某个类型的方法调用,其真正执行的方法取决于运行时期实际类型的方法。 多态具有一个非常强大的功能,就是允许添加更多类型的子类实现功能扩展,却不需要修改基于父类的代码。 Final 1. 如果一个类不希望任何其他类继承自它,那么可以把这个类本身标记为final。用final修饰的类不能被继承。 2. 继承可以允许子类覆写父类的方法。如果一个父类不允许子类对它的某个方法进行覆写,可以把该方法标记为final。用final修饰的方法不能被Override。 3. 对于一个类的实例字段,同样可以用final修饰。用final修饰的字段在初始化后不能被修改。可以在构造方法中初始化final字段: class Person { public final String name; public Person(String name) { this.name = name; } } 这种方法更为常用,因为可以保证实例一旦创建,其final字段就不可修改。 4. 用final修饰局部变量可以阻止被重新赋值。 抽象类abstract class与接口 interface   静态字段和静态方法   包与作用域   内部类   classpath和jar   模块 …

Java 学习记录-面对对象基础 Read More »

Java 学习记录-入门内容

入口程序规定 Java入口程序规定的方法必须是静态方法,方法名必须为main,括号内的参数必须是String数组。 public class Hello { public static void main(String[] args) { // 方法名是main // 方法代码… } // 方法定义结束 } 注释 // 这是注释… /* 这是注释 blablabla… 这也是注释 */ /** * 可以用来自动创建文档的注释 * * @auther liaoxuefeng */ 数据类型 基本数据类型 整数类型:byte, short, int, long 浮点数类型:float, double 字符类型:char 布尔类型:boolean 计算机内存的最小存储单元是字节(byte),一个字节就是一个8位二进制数,即8个bit。 注意char类型使用单引号’,且仅有一个字符,要和双引号”的字符串类型区分开。 引用数据类型 除了上述基本类型的变量,剩下的都是引用类型。 字符串 … 引用类型的变量类似于C语言的指针,它内部存储一个“地址”,指向某个对象在内存的位置。 常量 常量在定义时进行初始化后就不可再次赋值,再次赋值会导致编译错误。 …

Java 学习记录-入门内容 Read More »