- Java常用类的使用
- 目录
- 1字符串相关的类
- 1.1String的常用方法
- 1.1.1 length()返回当前字符串的长度
- 1.1.2 indexOf(s)查找字符s或字符串s在当前字符串中第一次出现的位置
- 1.1.3 lastIndexOf(s)查找字符s或字符串s在当前字符串中最后一次出现的位置
- 1.1.4 substring(int beginIndex)截取从beginIndex位置开始到结束位置的字符串
- 1.1.4 substring(int beginIndex,int endIndex)截取从beginIndex位置开始到endIndex-1位置的字符串
- 1.1.5trim()返回去除前后空格的字符串
- 1.1.6 boolean equals(Object obj)与指定字符串比较
- 1.1.7toLowerCase()、toUpperCase()转换大小写
- 1.1.8charAt(int index)获取指定位置上的字符
- 1.1.9 getBytes()将该字符串转化成byte数组
- 1.2代表不可变的字符序列(不可变性)
- 1.3StringBuilder(不具备不可变性)
- 1.4StringBuffer
- 2Date类
- 2.1Java.util.Date
- 2.2Java.sql.Date(对应数据库中的日期类型)
- 2.3Java.util.Date()(父类)与Java.sql.Date()的转换
- 2.4java.text.SimpleDateFormat对Date类的格式化和解析
- 2.5java.util.Calendar
- 2.5.1实例化
- 2.5.2常用方法
String s1="yuan"; System.out.println(s1.length());//41.1.2 indexOf(s)查找字符s或字符串s在当前字符串中第一次出现的位置
String s1="yuan";
System.out.println(s1.indexOf('y'));//0
System.out.println(s1.indexOf("an"));//2
1.1.3 lastIndexOf(s)查找字符s或字符串s在当前字符串中最后一次出现的位置
String s1="yuanyuan";
System.out.println(s1.lastIndexOf("yu"));//4
System.out.println(s1.lastIndexOf("y"));//4
1.1.4 substring(int beginIndex)截取从beginIndex位置开始到结束位置的字符串
String s1="yuanyuan"; System.out.println(s1.substring(5));//uan1.1.4 substring(int beginIndex,int endIndex)截取从beginIndex位置开始到endIndex-1位置的字符串
String s1="yuanyuan"; System.out.println(s1.substring(4,8));//yuan1.1.5trim()返回去除前后空格的字符串 1.1.6 boolean equals(Object obj)与指定字符串比较
String s1="yuanyuan";
System.out.println(s1.equals("yuanyuan"));//true
1.1.7toLowerCase()、toUpperCase()转换大小写
1.1.8charAt(int index)获取指定位置上的字符
1.1.9 getBytes()将该字符串转化成byte数组
String s1="Java基础"; byte []arr=s1.getBytes(); for(int i=0;i1.2代表不可变的字符序列(不可变性)System.out.print(arr[i]+" "); }//74 97 118 97 -27 -97 -70 -25 -95 -128 System.out.println(); String s2=new String(arr); System.out.println(s2);//Java基础
在字符串常量池中不会存储相同的字符串
String s1 = "zxc"; String s2 = "zxc"; //在常量池中只存在一个zxc,s1与s2指向常量池中同一个内存空间,返回true System.out.println(s1==s2);//true s1 = "zxcv"; System.out.println(s1==s2);//false1.3StringBuilder(不具备不可变性)
频繁使用字符串时使用
1.4StringBuffer与StringBuilder基本一样,差别:StringBuilder线程不安全;StringBuffer线程安全,但是效率偏低
2Date类 2.1Java.util.Dateimport java.util.Date;
public class StringTest {
public static void main(String[] args) {
//构造器1,toString()返回的是当前的时间
Date date1=new Date();
System.out.println(date1.toString());
//Mon May 02 21:14:28 GMT+08:00 2022
System.out.println(date1.getTime());
//距离1970年1月1日的毫秒数(时间戳)1651497268546
}
}
2.2Java.sql.Date(对应数据库中的日期类型)
java.sql.Date date2=new java.sql.Date(1651497268546l); System.out.println(date2);//2022-05-022.3Java.util.Date()(父类)与Java.sql.Date()的转换
java.util.Date date1=new java.util.Date(); java.sql.Date date3=new java.sql.Date(date1.getTime()); // System.out.println(date3);2.4java.text.SimpleDateFormat对Date类的格式化和解析
//两个操作:格式化:日期转化成字符串
// 解析:格式化的逆操作
//使用默认的构造器的话,日期格式得按照它的规定来
SimpleDateFormat dateFormat=new SimpleDateFormat();
Date date=new Date();
System.out.println(date);
//Mon May 02 21:35:37 GMT+08:00 2022
String format= dateFormat.format(date);
System.out.println(format);
//日期格式化之后输出:2022/5/2 下午9:35
//解析
String str="2022/5/2 下午9:35";
Date date2=dateFormat.parse(str);
System.out.println(date2);
//Mon May 02 21:35:00 GMT+08:00 2022
//使用带参数的构造器
SimpleDateFormat dateFormat2=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String format2=dateFormat2.format(date2);
System.out.println(format2);
//2022-05-02 09:35:00
2.5java.util.Calendar
2.5.1实例化
// Calendar是一个抽象类 // 实例化方式1:创建其子类GregorianCalendar的对象 GregorianCalendar g = new GregorianCalendar(); System.out.println(g); // 实例化方式2:调用其静态方法getInstance() Calendar calendar = Calendar.getInstance(); System.out.println(calendar);2.5.2常用方法
//get方法 int i = calendar.get(Calendar.DAY_OF_MONTH); System.out.println(i);//3 //set方法 calendar.set(Calendar.DAY_OF_MONTH, 10); System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//10 //add方法 calendar.add(Calendar.DAY_OF_MONTH, 5); System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//15 //getTime System.out.println(calendar.getTime() );//Sun May 15 09:24:58 GMT+08:00 2022



