包装类

image.png
包装类和String之间的转化:
以Integer为例

  1. //包装类-》String
  2. Integer i=100;
  3. //方式 1
  4. String str1 = i + "";
  5. //方式 2
  6. String str2 = i.toString();
  7. //方式 3
  8. String str3 = String.valueOf(i);
  9. //String -> 包装类(Integer)
  10. String str4 = "12345";
  11. Integer i2 = Integer.parseInt(str4);
  12. //使用到自动装箱
  13. Integer i3 = new Integer(str4);//构造器

string

image.png
string的注意事项:
String类是保存字符串常量的,每次跟新都需要开辟新的空间
//1.String 对象用于保存字符串,也就是一组字符序列
//2. “jack” 字符串常量, 双引号括起的字符序列
//3. 字符串的字符使用 Unicode 字符编码,一个字符(不区分字母还是汉字)占两个字节
//4. String 类有很多构造器,构造器的重载
//5. String 类实现了接口 Serializable【String 可以串行化:可以在网络传输】 接口 Comparable [String
//6. String 是 final 类,不能被其他的类继承
//7. String 有属性 private final char value[]; 用于存放字符串内容
//8. 一定要注意:value 是一个 final 类型, 不可以修改(需要功力):即 value 不能指向 新的地址,但是单个字符内容是可以变化
image.png
StringBuffer是一个容器
方法和String类似,但是StringBuffer是可变长度的,对字符串内容可以进行增删。
//1. StringBuffer 的直接父类 是 AbstractStringBuilder
//2. StringBuffer 实现了 Serializable, 即 StringBuffer 的对象可以串行化
//3. 在父类中 AbstractStringBuilder 有属性 char[] value,不是 final ,该 value 数组存放 字符串内容,引出存放在堆中的
//4. StringBuffer 是一个 final 类,不能被继承
//5. 因为 StringBuffer 字符内容是存在 char[] value, 所有在变化(增加/删除) 不用每次都更换地址(即不是每次创建新对象), 所以效率高于 String

String和StringBuffer之间的相互转化
String str = “hello tom”;
//方式 1 使用构造器
//注意: 返回的才是 StringBuffer 对象,对 str 本身没有影响
StringBuffer stringBuffer = new StringBuffer(str);
//方式 2 使用的是 append 方法
StringBuffer stringBuffer1 = new StringBuffer();
stringBuffer1 = stringBuffer1.append(str);
//看看 StringBuffer ->String
StringBuffer stringBuffer3 = new StringBuffer(“韩顺平教育”);
//方式 1 使用 StringBuffer 提供的 toString 方法
String s = stringBuffer3.toString();
//方式 2: 使用构造器来搞定
String s1 = new String(stringBuffer3);

StringBuilder

image.png

String StringBuffer StringBuilder

image.png

Array

image.png

BigInteger 和BigDecimal

BigInteger用来保存较大的整整 BigDecimal用来保存精度较高的小数

时间日期相关

Data() 获取当前系统的时间
SimpleDateFormat 可以将指定相应的格式,这里的格式使用的字母是规定好的不呢个乱写

  1. Data d1 = new Data();
  2. SimpleDateFormat sdf = new SimpleDateFormat("yyyy 年 MM 月 dd 日 hh:mm:ss E"); String format = sdf.format(d1); // format:将日期转换成指定格式的字符串
  3. //1. 可以把一个格式化的 String 转成对应的 Date
  4. //2. 得到 Date 仍然在输出时,还是按照国外的形式,如果希望指定格式输出,需要转换
  5. //3. 在把 String -> Date , 使用的 sdf 格式需要和你给的 String 的格式一样,否则会抛出转换异常
  6. String s = "1996 年 01 月 01 日 10:20:30 星期一";
  7. Date parse = sdf.parse(s);
  8. System.out.println("parse=" + sdf.format(parse));

第三代日期
LocalData 只包含日期,可以获取日期字段
LocalTime 只包含时间,可以获取时间字段
LocalDataTime 包含日期+时间,可以获得日期和时间字段

可以使用DateTimeFormatter对象进行格式化,如

  1. DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String format = dateTimeFormatter.format(ldt);