常用类
1)种类
String,基本数据类型的包装类,Date日期类…
2)String类
String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。它是不可变长的字符序列。
- String(String original) 初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列
-
String str2=new String("ccc"); //2个对象
- String(char[] value) 分配一个新的 String,使其表示字符数组参数中当前包含的字符序列
-
char[] ch={'s','h','s','x','t'}; String str4=new String(ch); System.out.println(str4); //结果 shsxt
- String(char[] value, int offset, int count) 分配一个新的 String,它包含取自字符数组参数一个子数组的字符
-
String str5=new String(ch,2,3); System.out.println(str5); //结果 sxt
- String(byte[] bytes, String charsetName) 自定字符编码格式
-
String str7=new String(arr,"gbk"); System.out.println(str7);
3)StringBuilder
可变长的字符序列,线程不安全,效率较高
注:单线程环境下,如果大量的对字符串做修改,推荐使用StringBuilder
//StringBuilder() 构造一个其中不带字符的字符串生成器,初始容量为 16 个字符。 StringBuilder sb=new StringBuilder(); System.out.println(sb); //为空 //StringBuilder(String str) 构造一个字符串生成器,并初始化为指定的字符串内容。 StringBuilder sb2=new StringBuilder("abc"); System.out.println(sb2); //abc //StringBuilder(int capacity) 构造一个其中不带字符的字符串生成器,初始容量由 capacity 参数指定。 StringBuilder sb3=new StringBuilder(30); //int capacity() 初始容量 System.out.println(sb.capacity()); //16 System.out.println(sb2.capacity()); //19 System.out.println(sb3.capacity()); //30
4)StringBuffer
可变长的字符序列,线程安全,效率较低
注:多线程环境下,需要保证线程安全的是哦户,如果大量的对字符串做修改,推荐使用StringBuffer
5)基本数据类型的包装类
byte — Byte
short — Short
int — Integer
long — Long
float — Float
double— Double
char — Character
boolean — Boolean自动拆装箱- 自动装箱: 基本-->引用
- 自动拆箱: 引用-->基本
public class DataDemo01 extends Object{ public static void main(String[] args) { int a=5; Integer i1=a; //自动装箱 Integer.valueOf(a) System.out.println(i1+1); int i=i1; //自动拆箱 i1.intValue() -->返回int类型的值 Integer i2=new Integer("123435"); System.out.println(i2); int i5=127; //整数常量池 Integer i3=127; //Integer.valueOf(127) Integer i7=127; //如果缓冲区对象所能表示的范围之间[-128,127],返回缓冲区对象,否则返回new Integer Integer i4=new Integer(127); //堆中 Integer i6=new Integer(127); System.out.println(i3==i4); //false System.out.println(i4==i6); //false //Integer类型无论是否是new的,和基本数据类型比较,会自动拆箱,只要值相同肯定相同 System.out.println(i4==i5); //true System.out.println(i3==i5); //true Integer i8=128; Integer i9=128; System.out.println(i8==i9); //true Double d=123.123; } }
6)日期类——Date
- Date()表示当前本机时间
-
//Date() 分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。 Date date=new Date(); System.out.println(date);
- Date(long date) 分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。
-
Date date1=new Date(9283472174982L); System.out.println(date1);
- boolean after(Date when) 测试此日期是否在指定日期之后。
-
System.out.println(date.after(date1));
- boolean equals(Object obj) 比较两个日期的相等性。
-
System.out.println(date.equals(date2));
- SimpleDateFormat 日期格式转换器
-
//创建默认转换器 SimpleDateFormat simple=new SimpleDateFormat(); //创建指定格式的转换器 SimpleDateFormat simple2=new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");
- format : 日期对象转为字符串
-
Date date=new Date(); System.out.println(simple2.format(date));;
- parse : 字符串转为日期对象
-
String str="2017年08月12日 05:36:15"; System.out.println(simple3.parse(str));