常用类

一.String ——不可变长的字符序列

String:String类表示字符串,java中的所有字符串文字(例“abc”)都实现为此类的实例

底层:jdk8-->字符数组        private        final        char[]value;

           jdk11-->字节数组        private        final        byte[]value;

String常用的方法

char        charAT(int index)返回指定索引处的char值

int           codepointAT(int index)返回指定索引处的字符

二.

String:不可变的字符序列        private final byte[] value

StringBuilder:可变的字符序列,线程不安全|不同步

StringBuffer:可变的字符序列,线程安全的|同步

执行效率:        StringBuilder>StringBuffer>String

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

(1)StringBuilder sb = new StringBuilder();

                扩容:原容量*2+2

                StringBuilder

(2)方法:reserse();前后反转abe->eba

        

                与String类型互换

StringBuilder->String        

sb.toString();        new String(sb);

String->StringBuilder

new StringBuilder(str);

             

三.基本数据类型的包装类

基本                                        引用        

byte                                        Byte

short                                       Short

int                                           Integer     

long                                        Long

char                                        Character

boolean                                  Boolean

double                                     Double

float                                          Float

有了基本数据类型为什么还要包装类

1.包装类当中提供了一些成员方法,更强大

2.类似容器中只能存储引用数据类型数据,需要包装类

3.基本数据类型与引用数据类型默认值不同

自动拆装箱:jdk1.5

自动装箱:基本->引用        自动拆箱:引用->基本

为什么有了引用数据类型还有基本数据类型

1.有利用节省内存

2.使用更简单方便

总结:int,Integer,new Integer数据比较问题:

要求数据值相等考虑类型,地址等问题

1.两个new比较,肯定不相等,堆中内存地址不同

2.两个int值比较值相等就相等

3.int与Integer比较,无论是否通过new,只要数据值相等就相等,因为会先自动拆箱成基本数据类型比较

4.一个Integer,一个new Integer肯定不相等,new就是堆内存地址,地址肯定不同

5.两个Integer比较,看数值的范围是否在[-128,127]之间,在之间相等,不在之间返回new Integer不相等

四.枚举类型——一种事物的所有可能,一种类型的所有实例

1.enum定义枚举

2.枚举类中的字段都作为当前枚举类型的实例存在,默认public static final 修饰

3.枚举类中可以根据需要定义成员,成员变量,成员方法,构造器...

4.枚举类型中的构造器默认私有的

5.所有的枚举类型默认隐式的继承自java.lang.Enun类型

五.Math类

Math包含用于执行基本数字运算的方法,例如基本指数,对数平方根和三角函数        静态工厂

六.Date——表示特定的时刻,精度为毫秒        时间日期

1.在java.util包下的date,表示一个时间日期精确到ms数

2.Date(long date) 参数为ms数标准基本时间(成为“纪元”)以来的指定毫秒数,即1970年1月1日00:00:00 GMT

SimpleDateFormat                日期格式转换类

java8新增

LocaIDate                日期

LocaITime                时间

LocaIDateTime        年月日时分秒

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值