码迷,mamicode.com
首页 > 其他好文 > 详细

常用类

时间:2020-02-04 14:00:36      阅读:51      评论:0      收藏:0      [点我收藏+]

标签:序列   需要   ringbuf   pytho   拼接   str1   integer   重复   安全   

一:包装类

java不是纯面向对象的语言,基本数据类型就不是对象,这点跟python不同,因此,当要用基本数据类型转对象时,就需要相应的包装类进行包装。
例如Integer类,官方建议用Integer.valueOF(“30”)静态方法,就像Bolean.valueOf,有缓存,某些对象不需要重复创建。

二: 自动拆箱与装箱

Integer a = 1234;//自动装箱
int b = a;//自动拆箱 调用 a.IntValue(); 

-128到127之间的数字做了缓存,避免重复创建多余的对象,系统已经预先创建好了一个cache数组,里面包含这些对象了。

Integer i1 = 1234;
Integer i2 = 1234;
i1 ==  i2 false
Integer i1 =10;
Integer i2 = 10;
i1 ==  i2 true

三: String类

1.不可变序列,final的一个char数组,字符串操作其实是创建了新的字符串。
2.字符串比较时尽量用equal 如果用==会有许多意想不到的问题,如:

str1 = "hello" + "csz"
str2 = "hellocsz"
str1 == str2  //true,因为字符串字面量编译器会做优化,str1 实际就是hellocsz
str = "hello"
str1 = str + "csz" //如果是拼接变量的话,就不是一个对象

四: stringBuilder 与StringBufer

stringBuilder 线程不安全 效率高 (一般用它)
StringBufer 线程安全 效率低
他们都是可变序列,方法都是return this 可以直接作用在原字符串上的

常用类

标签:序列   需要   ringbuf   pytho   拼接   str1   integer   重复   安全   

原文地址:https://www.cnblogs.com/shuzi0806/p/12241426.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!