4.6 常用类 String、Math、基本数据封装类、Arrays、Enum

4.6 常用类 String、Math、基本数据封装类、Arrays、Enum

String

​ String类表示字符串。 Java程序中的所有字符串文字(例如"abc" )都实现为此类的实例

​ 1.String() 初始化新创建的 String对象,使其表示空字符序列

​ 2.String(byte[] bytes) 通过使用平台的默认字符集解码指定的字节数组构造新的 String

​ 3.String(byte[] bytes, String charsetName) 构造一个新的String由指定用指定的字节的数组解码charset

​ 4.String(char[] value) 分配新的 String ,使其表示当前包含在字符数组参数中的字符序列

String中的常用方法

​ 1.char charAt(int index) 返回指定索引处的 char值

​ 2.int codePointAt(int index) 返回指定索引处的字符(Unicode代码点)

​ 3.int codePointBefore(int index) 返回指定索引之前的字符(Unicode代码点)

​ 4.int compareTo(String anotherString) 按字典顺序比较两个字符串

​ 5.int compareToIgnoreCase(String str) 按字典顺序比较两个字符串,忽略大小写差异

​ 6.String concat(String str) 将指定的字符串连接到此字符串的末尾

​ 7.boolean contains(CharSequence s) 当且仅当此字符串包含指定的char值序列时,才返回true

​ 8.int indexOf(String str) 返回指定子字符串第一次出现的字符串中的索引

​ 9.int indexOf(String str, int fromIndex) 从指定的索引处开始,返回指定子字符串第一次出现的字符串中的索引

StringBuider StringBuffer

​ 区别:

​ String : 不可变的字符序列
​ StringBuilder 可变的字符序列
​ 类提供与StringBuffer兼容的API,但不保证同步->线程不安全。效率相对较高
​ StringBuffer 可变的字符序列
同步的->线程安全->效率相对较低

​ 执行效率:
​ StringBuilder>StringBuffer>String

StringBuider StringBuffer 的构造器

​ 1.StringBuilder() 构造一个字符串构建器,其中不包含任何字符,初始容量为16个字符。

​ 2.StringBuilder(int capacity) 构造一个字符串构建器,其中没有字符,并且具有 capacity参数指定的初始容量

​ 3.StringBuilder(CharSequence seq) 构造一个字符串构建器,其中包含与指定的 CharSequence相同的字符

StringBuider StringBuffer 的常用方法

​ 1.StringBuilder append(boolean b) 将 boolean参数的字符串表示形式追加到序列中

​ 2.StringBuilder delete(int start, int end) 删除此序列的子字符串中的字符。 结束索引不包含

​ 3.StringBuilder deleteCharAt(int index) 按此顺序删除指定位置的 char

​ 4.StringBuilder insert(int offset, Object obj) 将 Object参数的字符串表示形式插入此字符序列中

​ 5.StringBuilder reverse() 导致此字符序列被序列的反向替换

​ 注意:1.每次缓冲池扩容都是原容量的2倍+2

​ 2.编译时常量会直接运算

Math的常用方法

​ 1.static double abs(double a) 返回 double值的绝对值

​ 2.static double ceil(double a) 返回大于或等于参数且等于数学整数的最小值(最接近负无穷大) double

​ 3.static double floor(double a) 返回小于或等于参数且等于数学整数的最大值(最接近正无穷大) double

​ 4.static long max(long a, long b) 返回两个 long值中较大的 long

​ 5.static double min(double a, double b) 返回两个 double值中较小的 double

​ 6.static long round(double a) 返回与参数最接近的 long ,并将关系四舍五入为正无穷大。 小数点后一位

​ 7.static double sqrt(double a) 返回 double值的正确舍入正平方根

基本数据封装类

​ 用处:1.集和内部只能存储引用数据类型的数据,可以通过包装类型显示

​ 2.包装类提供了很多方法,可以灵活操作数据

​ 3.解决数据默认值的问题,null和0的含义不同

​ 基本类为小写,包装类为基本类第一个字母大写(int 和 char不同)

​ int -> Integer , char -> Character

​ 自动拆装箱:装箱是由基本数据类型转化为引用数据类型,拆箱则相反

​ 包装类型只要与其相对应的基本数据类型比较时,包装类型会自动拆箱

​ 注意: Integer在[-128,127]时返回的是缓冲区中的对象,若Integer不在[-128,127]时,则返回 new Integer

Arrays的常用方法

​ 1.static int[] copyOf(int[] original, int newLength) 截取 拷贝 填充,默认从索引为0的位置开始

​ 2.static int[] copyOfRange(int[] original, int from, int to) 将指定数组的指定范围复制到新数组中。 结束索引不包含

​ 3.static boolean deepEquals(Object[] a1, Object[] a2) 深层比较是否相等,针对于多维数组

​ 4.static int mismatch(boolean[] a, boolean[] b) 查找两个数组中第一个不相等的数据的索引

​ 5.static void sort(int[] a, int fromIndex, int toIndex) 按升序对数组的指定范围进行排序。

​ 6.static int binarySearch(int[] a, int key) 使用二进制搜索算法在指定的int数组中搜索指定的值。 要求前提升序排序

Enum

​ enum:枚举,表示一种事物的所有可能

​ 注意:1.枚举类型不能自定义实例化,实例由程序员自己提供

​ 2.枚举类型通过枚举字段提供当前类型的实例

​ 3.枚举类型的构造器只能是private

​ 4.一般通过枚举类型来表示某种标识,而不会定义太多的功能和方法

​ 5.通过enum定义的枚举类型,都默认继承自java.lang.enum

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值