Java基础语法

-- 基础 --


操作

  • 注释:单行// 多行/* */ 文档注释/** */
  • 变量声明:
    数据类型 identifier [ = value][, identifier [= value] ...] ;
    var identitifier = value(var声明会自动判断数据类型, >java 10)
  • 常量声明: final identifier [ = value][, identifier [= value] ...] ;
  • 类型转换: (数据类型)数据
    浮点数->整数 舍弃小数 而非四舍五入
    字符->数字 使用ascii码对应数字
  • 自动类型转换:
    运算时不同类型数据先转化为同一类型,然后进行运算(boolean 引用类型 无法转换)
    byte,short,char—> int —> long—> float —> double (转换从低级到高级)
  • 循环:
while( 布尔表达式 ) {
//循环内容 
}
-- -- -- -- -- -- -- -- --
do {
       //代码语句
}while(布尔表达式);
-- -- -- -- -- -- -- -- --
for(初始化; 布尔表达式; 更新) {
//代码语句 
}
-- -- -- -- -- -- -- -- --
>=java5
for(声明语句 : 表达式) { //类似于foreach 
//声明语句声明新的局部变量,该变量的类型必须和数组元素的类型匹配,其作用域限定在循环语句块,其值与此时数组元素的值相等
//表达式是要访问的数组名,或者是返回值为数组的方法
//代码句子 
}
-- -- -- -- -- -- -- -- --
break 跳出最里层的一层循环
continue 跳转到下一次循环
  • 条件语句
if(布尔表达式 1){ 
//如果布尔表达式 1的值为true执行代码 
}else if(布尔表达式 2){ 
//如果布尔表达式 2的值为true执行代码 
}else if(布尔表达式 3){
//如果布尔表达式 3的值为true执行代码 
}else { 
//如果以上布尔表达式都不为true执行代码 
}
-- -- -- -- -- -- -- -- --
switch(expression){ 
    case value : 
    //语句 
    break; //可选,若没有break,会执行后面的case语句
    case value : 
    //语句 
    break; //可选,若没有break,会执行后面的default语句
    //你可以有任意数量的case语句 
    default : //可选 
    //语句 
}

概念

  • 基本数据类型: byte short int long float double boolean char
    byte: 8位, 有符号, 默认值为0 -128(-2^7) ->127(2^7-1)
    short: 16位, 有符号, 默认值为0 -32768(2^15-1) -> 32767(2^15-1)
    int: 32位, 有符号, 默认值为0 -2^31 -> 2^31-1
    long: 64位, 有符号, 默认值为0L -2^63 -> 2^63-1
    float: 32位, 单精度, 默认值为0.0f
    double: 64位, 双精度, 默认值位0.0d
    boolean: 只有true和flase两个值, 默认值为false
    char: 储存单一16位Unicode字符, 默认值为 'u0000'
    注: long的值后面要加上l/L, float后要加上f/F, double后要加上d/D
    注:整数的默认类型是int,小数默认是double
    声明但未初始化的变量的值为默认值,声明但未初始化的数组的元素值为默认值
  • 引用类型: 对象 数组 (默认值为null)
  • 传递
    基本数据类型是值传递,
    引用类型变量传递的为本身的副本,但副本也指向同一个对象,本质也为值传递
    Java中其实还是值传递的,只不过对于对象参数,值的内容是对象的引用
  • 变量: 局部变量 实例变量(非静态变量) 类变量(静态变量) 参数变量(即形参)
    局部变量: 在方法, 构造方法 或 语句块 中定义的变量
    在声明的方法、构造函数 或 块 执行结束后被销毁
    局部变量在声明时需要初始化,否则会导致编译错误
    实例变量: 声明在类中, 方法、构造函数 或 块之外的变量,
    在创建对象的时候实例化, 实例变量值不共享, 可被类中方法、构造方法 和 特定类的语句块 访问
    可不初始化, 会被赋予相关数据类型的默认值
    类变量: 类变量也声明在类中,方法、构造函数 或 块之外,但必须声明为 static 类型
    同一个类的所有实例共享同一个类变量的值, 可被类中方法、构造方法 和 特定类的语句块 访问
    可不初始化, 会被赋予相关数据类型的默认值
  • 修饰符:
    default(即什么也不写): 在同一包内可见
    使用对象:类、接口、变量、方法
    private : 在同一类内可见
    使用对象:变量、方法  注意:不能修饰类(外部类)
    public : 对所有类可见
    使用对象:类、接口、变量、方法
    protected : 对同一包内的类和所有子类可见
    使用对象:变量、方法 注意:不能修饰类(外部类)
  • final关键字
    可使用对象:变量(包括类属性、对象属性、局部变量和形参),方法(包括类方法和对象方法)和类
    修饰类:类不能被继承
    修饰方法:方法不能被子类重写
    修饰变量:定义常量
  • static关键字:
    可使用对象:类属性 类方法 代码块 import导入 内部类
    修饰类属性(静态变量):使属性属于类,可通过类名直接访问,该类创建的所有实例共享该变量的值
    修饰方法(静态方法):可通过类名直接访问,在静态方法中只能访问静态成员,且无法使用this关键字,直接用对应名称即可(可以通过实例来访问静态方法,但不推荐)
    修饰代码块(静态代码块):用于初始化静态变量,在类加载时执行一次(会在任何静态方法或静态变量被访问之前执行), 且无法使用this关键字,直接用对应名称即可
    修饰import:可导入特定/全部的静态成员
    修饰内部类:使内部类可以访问外部类的静态变量与静态方法
  • instanceof运算符
    ( Object reference variable ) instanceof (class/interface type)
    若运算符左侧变量所指的对象, 是操作符右侧类或接口(class/interface)的一个对象, 那么结果为真

源文件

  • 源文件与类: 文件中只能有一个public类(且该类的名称与文件要相同),可以有多个非public类
  • 源文件程序开始:java都从文件的 public 类的main方法开始执行
  • 源文件编译: javac 文件名 编译后生成 .class 文件, 时 java 的字节码文件
  • 源文件执行: java 文件名
  • 命令行参数:储存在args[]数组中, 使用args[]以调用

类与对象

  • 创建类: [修饰符] class 类名{}
  • 继承:
    [修饰符] class 类名 extends 要继承的类名{}
    [修饰符] class 类名 implements 接口,... { }
    特点: 不支持多继承, 一次只能继承一个类(用extends), 但可做到多继承接口(用implements)
    特点: 继承父类非private的属性和方法
    特点: 所有的类都是继承于 java.lang.Object,当一个类没有继承的两个关键字,则默认继承 Object
    特点:不会继承父类的构造方法,但调用子类构造函数时,会自动调用父类的无参数构造方法,再执行子类构造方法的内容,若在子类构造函数中用super()关键词,可改变所调用的父类的构造方法与调用的时间
  • 构造方法
    名字:必须与类同名
    特点:创建对象时,若没有显式地定义构造方法,编译器将会为该类提供一个默认的构造方法
    构造方法链: 可在构造方法中用this(参数)来调用其它构造方法, 使得创建对象时使用多个构造方法
  • 方法重载: 同一个类中可设定多个同名方法, 但形参列表不同(数据类型 顺序或数量不同), 访问方法时会根据传入的实参(数据类型 顺序或数量)来自动判断运用哪个方法(类的方法也可在子类中被重载)
  • 方法重写: 在方法前一行加上@Override,子类中可重新定义继承自父类的同名方法
    条件: 方法名相同 参数列表相同 返回类型必须相同或为父类返回类型的子类型(<=java5) 返回值可以不同(>=java7)
    访问修饰符不能比父类方法更严格 不能抛出比父类方法更广泛的检查异常
    final方法不能被重写,static方法无法被重写但能被再次声明
    无法重写构造方法(因为不会继承构造方法)
  • 父类引用指向子类对象: 父类名 变量1 = new 子类();
    特点: java 中可以用 父类 引用指向 子类对象, 也可以指向子类的子类 ...
    特点:使得 可以通过该引用 访问 子类从父类继承的 成员变量 与 方法, 而不能访问子类特有的 成员变量 与 方法
    特点: 对于被子类重写后的方法, 通过该引用 访问的是 重写后的方法
    特点: 可通过 子类名 变量2 = (子类名)变量1; 来再将类型变回子类引用
  • super关键字:在方法重载的方法中使用super(实参)可调用被重写的父类的方法
  • 访问类: this.成员 引用当前对象的成员
  • 实例化: 类名 变量 = new 类名(形参)
  • 访问实例: 实例变量.成员
  • 抽象类/方法: 通过在类/方法的定义前(修饰符后)加上 abstract 关键词以声明
    抽象类特点: 抽象类 不能用 new 创建对象(实例化), 必须被继承, 才能被使用
    抽象类的方法: 抽象类 中可以有 构造方法 正常方法 与 抽象方法
    抽象方法特点: 抽象方法不包含方法体(即没有花括号即其内的内容), 且只能存在于 抽象类中, 构造方法 与 类方法 不能声明为 抽象方法
    抽象方法的实现: 抽象方法所在抽象类的子类 必须为 抽象类 或 重写了所有从 父类继承来的抽象方法(抽象方法的实现)
  • 多态: 概念, 同一个接口, 使用不同的实例而执行不同操作(功能), 常用 继承 重写 父类引用指向子类对象 接口 抽象类/方法 来实现
  • 封装: 概念, 将对象的 成员变量 私有化(private), 在对象外部通过公共(public)方法访问 这些成员变量

方法

  • 定义: [修饰符] 返回值类型 方法名(参数数据类型 形参名){方法体}
    [修饰符] abstact 返回值类型 方法名(参数数据类型 形参名) (抽象方法)
    返回值类型写 void 表示无返回值
  • 可变参数(JDK>=1.5): 在指定参数类型后加一个省略号(...)
    限制: 一个方法中只能指定一个可变参数,且它必须是方法的最后一个参数
    特点: 可变参数意味着调用该方法时可传入符合数据类型 零个或多个实参, 而形参会变为储存所有实参值的数组

接口

  • 声明: [修饰符] interface 接口名{接口体}
  • 特点:
    接口与抽象类 类似, 接口内也能定义方法, 接口是抽象的, 不能实例化对象, 并且也没有构造方法
    接口是 隐式 抽象的, 无需使用 abstract 关键字
  • 方法:
    接口内的方法 都会被 隐式地 指定为 public abstract
    不能显示地指定 public abstract 以外的方法
    java>8 后, 可以使用 default 显式地定义非抽象的方法
  • 成员变量(字段):
    接口内的变量 都会被 隐式地 指定为 public static final
    不能显示地指定 public static final 以外的变量
  • 接口的实现:
    接口由类来实现, 类通过继承的方式来实现接口
    类实现接口时, 必须实现接口中的所有方法 或者 声明为抽象类
  • 继承: [修饰符] interface 接口名 [extends 其它接口名,...]{接口体}
    接口可以同时继承多个接口
  • 特点
    类在实现接口的方法时, 不能抛出强制性异常, 只能在接口中, 或者继承接口的抽象类中抛出该强制性异常
    一个类可以同时实现多个接口, 但只能继承一个类

包装类

  • 作用: 为方便, 有时我们需要使用对象, 而不是内置数据类型, 而Java 语言为每一个内置数据类型提供了对应的包装类, 使得可以将基础数据类型的值转化为对象
  • 使用(装箱): 将基础数据类型的值转化为对象
    包装类 变量 = new 包装类(基础数据类型的值) 基础操作
    var 变量 = new 包装类(基础数据类型的值) 会自动判断数据类型
    包装类 变量 = 基础数据类型的值 会自动转化为对象
  • 使用(拆箱): 将对象转化为基础数据类型的值
    基础数据类型 变量 = 对象 基础操作
包装类 与对应 基础数据类型
Byte-byte   Short-short  Integer-int  Long-long  
Float-float  Double-double  Boolean-boolean  Character-char
  • 包装类 Integer Long Byte Double Float Short 是抽象类 Number 的子类, Number 类属于 java.lang 包
  • Number 类及子类使用方法是直接 类.方法() 无需加入参数, 而 Math 类使用方法 是 Math.方法(数值)

  • 包名(全限定名): 包名通常使用小写字母, 并使用点号分隔, 包名通常与目录结构对应(包括内部包和外部包)
  • package 语句: 声明类所在的包, 若使用, 它应该是 Java 源文件中的第一个语句(除了注释)
  • import 语句: 导入其他包中的类, 使得可以在当前文件中使用这些类而不需要写出它们的完全限定名
    import 包名.类名,... 导入类 import 包名.* 导入所有类
    import 语句,应该放在 package 和类定义之间, 没有 package,那么 import 应该在最前面
    只能引入编译后的 .class 文件
  • 系统包
    java.lang - 基础的类
    java.io - 包含输入输出功能的函数
  • 路径: 类目录的绝对路径叫做 class path, 设置在系统变量CLASSPATH中
    编译器和 java 虚拟机通过将 package 名字加到 class path 后来构造 .class 文件的路径
  • 注意: import 和 package 对源文件中定义的所有类都有效,同一源文件中,不能给不同的类不同的包声明

反射

  • 介绍: 反射提供了一种动态操作类的能力, 允许程序在运行时查询 访问和修改类 接口 字段和方法的信息
  • 核心类与接口
    java.lang.Class: 表示类的对象, 提供了方法来获取类的字段 方法 构造函数
    java.lang.reflect.Field: 表示类的属性, 提供了访问和修改字段的能力
    java.lang.reflect.Method: 表示类的方法, 提供了调用方法的能力
    java.lang.reflect.Constructor: 表示类的构造函数, 提供了创建对象的能力
    注: Java 默认自动导入 java.lang 包, 但不会自动导入 java.lang.reflect 包
  • java.lang.Class
    简介: 每个类都有一个 Class 对象, 通过 类.class实例对象.classClass.forName(类的全限定名) 来获取
    getFields():获取所有公共字段
    getDeclaredFields():获取所有声明的字段,包括私有字段 (返回的是 Field 对象)
    getMethods():获取所有公共方法 (返回的是 Method 对象)
    getDeclaredMethods():获取所有声明的方法,包括私有方法
    getConstructors():获取所有公共构造函数(返回的是 Constructor 对象)
    getDeclaredConstructors():获取所有声明的构造函数,包括私有构造函数
    getSuperclass():获取类的父类
    getInterfaces():获取类实现的所有接口
  • java.lang.reflect.Field
    get(Object obj):获取指定对象的字段值
    set(Object obj, Object value):设置指定对象的字段值
    getType():获取字段的数据类型
    getModifiers():获取字段的修饰符(如 public、private)
    getName(): 获取字段的名称
    setAccessible(boolean flag): 将此反射对象的可访问性标志设置为指定的布尔值, 为 true 时, 允许访问私有字段, 为 false 时,恢复正常的访问控制
  • java.lang.reflect.Method
    invoke(Object obj, Object... args):调用指定对象的方法
    getReturnType():获取方法的返回类型
    getParameterTypes():获取方法的参数类型
    getModifiers():获取方法的修饰符(如 public、private)
  • java.lang.reflect.Constructor
    newInstance(Object... initargs):创建一个新实例,使用指定的构造函数参数
    getParameterTypes():获取构造函数的参数类型
    getModifiers():获取构造函数的修饰符(如 public、private)

String 类 与 字面量字符串

  • 字面量字符串: String 变量 = "字符串内容"
  • String类: String 变量 = new String("字符串内容")
  • 共同点: 两种字符串都是对象, 且都一旦创建就无法改变, 相关方法只是生成新的对象
  • 区别: 字面量字符串 在 编译期 被当做对象放入公共池(相同的字面量字符串会被当成同一个对象), 而String 类会在创建时建立在堆上(每个都是不同的对象)
  • 多行字面量字符串:使用"""内容""", 多行字符串每行行首会去掉等量的空格,去掉的量以行首空格数最少的一行为准,末尾会加上\n
  • 字符串连接:使用+号连接

StringBuffer类 与 StringBuilder类

  • 特点: 可以对 其对象本身 进行修改, 而不是产生新的对象
  • 区别: StringBuilder 的方法不是线程安全的(不能同步访问)
    由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类

数组 与 Arrays 类

  • 声明:数据类型[] 数组变量;数据类型 数组变量[];
  • 初始化:数组变量 = new 数据类型[大小]; 数组变量 = {值1,...};
    声明与初始化可以用一句话完成, 两个[]可定义二维数组
  • Arrays类初始化: 数组变量 = new Arrays(数组);
  • 区别: Arrays类有许多方便的方法

Object 类

  • 简介: Object 类是所有类的父类, 只要类没有明确继承一个父类, 该类就会自动继承 Object
  • 位置: Object 类位于 java.lang 包中

系统方法


Object 类方法

序号 方法 & 描述
1 protected Object clone()<br><br>创建并返回一个对象的拷贝
2 boolean equals(Object obj)<br><br>比较两个对象是否相等
3 protected void finalize()<br><br>当 GC (垃圾回收器)确定不存在对该对象的有更多引用时,由对象的垃圾回收器调用此方法。
4 Class<?> getClass()<br><br>获取对象的运行时对象的类
5 int hashCode()<br><br>获取对象的 hash 值
6 void notify()<br><br>唤醒在该对象上等待的某个线程
7 void notifyAll()<br><br>唤醒在该对象上等待的所有线程
8 String toString()<br><br>返回对象的字符串表示形式
9 void wait()<br><br>让当前线程进入等待状态。直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。
10 void wait(long timeout)<br><br>让当前线程处于等待(阻塞)状态,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者超过参数设置的timeout超时时间。
11 void wait(long timeout, int nanos)<br><br>与 wait(long timeout) 方法类似,多了一个 nanos 参数,这个参数表示额外时间(以纳秒为单位,范围是 0-999999)。 所以超时的时间还需要加上 nanos 纳秒。。

Number & Math 类方法

序号 方法与描述
1 xxxValue() <br>将 Number 对象转换为xxx数据类型的值并返回。
2 compareTo() <br>将number对象与参数比较。
3 equals() <br>判断number对象是否与参数相等。
4 valueOf() <br>返回一个 Number 对象指定的内置数据类型
5 toString() <br>以字符串形式返回值。
6 parseInt() <br>将字符串解析为int类型。
7 abs() <br>返回参数的绝对值。
8 ceil() <br>返回大于等于( >= )给定参数的的最小整数,类型为双精度浮点型。
9 floor() <br>返回小于等于(<=)给定参数的最大整数 。
10 rint() <br>返回与参数最接近的整数。返回类型为double。
11 round() <br>它表示四舍五入,算法为 Math.floor(x+0.5),即将原来的数字加上 0.5 后再向下取整,所以,Math.round(11.5) 的结果为12,Math.round(-11.5) 的结果为-11。
12 min() <br>返回两个参数中的最小值。
13 max() <br>返回两个参数中的最大值。
14 exp() <br>返回自然数底数e的参数次方。
15 log() <br>返回参数的自然数底数的对数值。
16 pow() <br>返回第一个参数的第二个参数次方。
17 sqrt() <br>求参数的算术平方根。
18 sin() <br>求指定double类型参数的正弦值。
19 cos() <br>求指定double类型参数的余弦值。
20 tan() <br>求指定double类型参数的正切值。
21 asin() <br>求指定double类型参数的反正弦值。
22 acos() <br>求指定double类型参数的反余弦值。
23 atan() <br>求指定double类型参数的反正切值。
24 atan2() <br>将笛卡尔坐标转换为极坐标,并返回极坐标的角度值。
25 toDegrees() <br>将参数转化为角度。
26 toRadians() <br>将角度转换为弧度。
27 random() <br>返回一个随机数。

Character 方法

序号 方法与描述
1 isLetter() <br>是否是一个字母
2 isDigit() <br>是否是一个数字字符
3 isWhitespace() <br>是否是一个空白字符
4 isUpperCase() <br>是否是大写字母
5 isLowerCase() <br>是否是小写字母
6 toUpperCase() <br>指定字母的大写形式
7 toLowerCase() <br>指定字母的小写形式
8 toString() <br>返回字符的字符串形式,字符串的长度仅为1

String

SN(序号) 方法描述
1 char charAt(int index) <br>返回指定索引处的 char 值。
2 int compareTo(Object o) <br>把这个字符串和另一个对象比较。
3 int compareTo(String anotherString) <br>按字典顺序比较两个字符串。
4 int compareToIgnoreCase(String str) <br>按字典顺序比较两个字符串,不考虑大小写。
5 String concat(String str) <br>将指定字符串连接到此字符串的结尾。
6 boolean contentEquals(StringBuffer sb) <br>当且仅当字符串与指定的StringBuffer有相同顺序的字符时候返回真。
7 static String copyValueOf(char[] data) <br>返回指定数组中表示该字符序列的 String。
8 static String copyValueOf(char[] data, int offset, int count) <br>返回指定数组中表示该字符序列的 String。
9 boolean endsWith(String suffix) <br>测试此字符串是否以指定的后缀结束。
10 boolean equals(Object anObject) <br>将此字符串与指定的对象比较。
11 boolean equalsIgnoreCase(String anotherString) <br>将此 String 与另一个 String 比较,不考虑大小写。
12 byte[] getBytes() <br> 使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
13 byte[] getBytes(String charsetName) <br>使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
14 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) <br>将字符从此字符串复制到目标字符数组。
15 int hashCode() <br>返回此字符串的哈希码。
16 int indexOf(int ch) <br>返回指定字符在此字符串中第一次出现处的索引。
17 int indexOf(int ch, int fromIndex) <br>返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。
18 int indexOf(String str) <br> 返回指定子字符串在此字符串中第一次出现处的索引。
19 int indexOf(String str, int fromIndex) <br>返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。
20 String intern() <br> 返回字符串对象的规范化表示形式。
21 int lastIndexOf(int ch) <br> 返回指定字符在此字符串中最后一次出现处的索引。
22 int lastIndexOf(int ch, int fromIndex) <br>返回指定字符在此字符串中最后一次出现处的索引,从指定的索引处开始进行反向搜索。
23 int lastIndexOf(String str) <br>返回指定子字符串在此字符串中最右边出现处的索引。
24 int lastIndexOf(String str, int fromIndex) <br> 返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索。
25 int length() <br>返回此字符串的长度。
26 boolean matches(String regex) <br>告知此字符串是否匹配给定的正则表达式。
27 boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len) <br>测试两个字符串区域是否相等。
28 boolean regionMatches(int toffset, String other, int ooffset, int len) <br>测试两个字符串区域是否相等。
29 String replace(char oldChar, char newChar) <br>返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的。
30 String replaceAll(String regex, String replacement) <br>使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
31 String replaceFirst(String regex, String replacement) <br> 使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串。
32 String[] split(String regex) <br>根据给定正则表达式的匹配拆分此字符串。
33 String[] split(String regex, int limit) <br>根据匹配给定的正则表达式来拆分此字符串。
34 boolean startsWith(String prefix) <br>测试此字符串是否以指定的前缀开始。
35 boolean startsWith(String prefix, int toffset) <br>测试此字符串从指定索引开始的子字符串是否以指定前缀开始。
36 CharSequence subSequence(int beginIndex, int endIndex) <br> 返回一个新的字符序列,它是此序列的一个子序列。
37 String substring(int beginIndex) <br>返回一个新的字符串,它是此字符串的一个子字符串。
38 String substring(int beginIndex, int endIndex) <br>返回一个新字符串,它是此字符串的一个子字符串。
39 char[] toCharArray() <br>将此字符串转换为一个新的字符数组。
40 String toLowerCase() <br>使用默认语言环境的规则将此 String 中的所有字符都转换为小写。
41 String toLowerCase(Locale locale) <br> 使用给定 Locale 的规则将此 String 中的所有字符都转换为小写。
42 String toString() <br> 返回此对象本身(它已经是一个字符串!)。
43 String toUpperCase() <br>使用默认语言环境的规则将此 String 中的所有字符都转换为大写。
44 String toUpperCase(Locale locale) <br>使用给定 Locale 的规则将此 String 中的所有字符都转换为大写。
45 String trim() <br>返回字符串的副本,忽略前导空白和尾部空白。
46 static String valueOf(primitive data type x) <br>返回给定data type类型x参数的字符串表示形式。
47 contains(CharSequence chars) <br>判断是否包含指定的字符系列。
48 isEmpty() <br>判断字符串是否为空。

StringBuffer类 与 StringBuilder类

  • 两个类的方法相同
序号 方法描述
1 public StringBuffer append(String s) <br>将指定的字符串追加到此字符序列。
2 public StringBuffer reverse() <br> 将此字符序列用其反转形式取代。
3 public delete(int start, int end) <br>移除此序列的子字符串中的字符。
4 public insert(int offset, int i) <br>将 int 参数的字符串表示形式插入此序列中。
5 insert(int offset, String str) <br>将 str 参数的字符串插入此序列中。
6 replace(int start, int end, String str) <br>使用给定 String 中的字符替换此序列的子字符串中的字符。
7 int capacity() <br>返回当前容量。
8 char charAt(int index) <br>返回此序列中指定索引处的 char 值。
9 void ensureCapacity(int minimumCapacity) <br>确保容量至少等于指定的最小值。
10 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) <br>将字符从此序列复制到目标字符数组 dst
11 int indexOf(String str) <br>返回第一次出现的指定子字符串在该字符串中的索引。
12 int indexOf(String str, int fromIndex) <br>从指定的索引处开始,返回第一次出现的指定子字符串在该字符串中的索引。
13 int lastIndexOf(String str) <br>返回最右边出现的指定子字符串在此字符串中的索引。
14 int lastIndexOf(String str, int fromIndex) <br>返回 String 对象中子字符串最后出现的位置。
15 int length() <br> 返回长度(字符数)。
16 void setCharAt(int index, char ch) <br>将给定索引处的字符设置为 ch
17 void setLength(int newLength) <br>设置字符序列的长度。
18 CharSequence subSequence(int start, int end) <br>返回一个新的字符序列,该字符序列是此序列的子序列。
19 String substring(int start) <br>返回一个新的 String,它包含此字符序列当前所包含的字符子序列。
20 String substring(int start, int end) <br>返回一个新的 String,它包含此序列当前所包含的字符子序列。
21 String toString() <br>返回此序列中数据的字符串表示形式。

Arrays 类

序号 方法和说明
1 public static int binarySearch(Object[] a, Object key) <br>用二分查找算法在给定数组中搜索给定值的对象(Byte,Int,double等)。数组在调用前必须排序好的。如果查找值包含在数组中,则返回搜索键的索引;否则返回 (-(插入点) - 1)。
2 public static boolean equals(long[] a, long[] a2) <br>如果两个指定的 long 型数组彼此_相等_,则返回 true。如果两个数组包含相同数量的元素,并且两个数组中的所有相应元素对都是相等的,则认为这两个数组是相等的。换句话说,如果两个数组以相同顺序包含相同的元素,则两个数组是相等的。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。
3 public static void fill(int[] a, int val) <br>将指定的 int 值分配给指定 int 型数组指定范围中的每个元素。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。
4 public static void sort(Object[] a) <br>对指定对象数组根据其元素的自然顺序进行升序排列。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇