一、int和String相互转换
-
int类型和String类型的相互转换
int—>String
Integer.toString(int值)—>String
String---->int
Integer.parseInt(数字字符串)---->int
举例:
public class IntegerDemo {
public static void main(String[] args) {
//int---->String
//定义一个int类型变量
//方式1:空串拼接(最简单的)
int a = 100 ;
String s = "" ;
String result = s + a ;
System.out.println("result:"+result);
System.out.println("-----------------------------");
//方式2:包装为Integer----->String
Integer i = new Integer(a) ;
//String toString()
String result2 = i.toString();
System.out.println(result2);
System.out.println("-----------------------------");
//直接使用Integer类的静态功能
//public static String toString(int i)
String result3 = Integer.toString(a);
System.out.println(result3);
System.out.println("-------------------------------------");
//将String--->int: String必须为数字字符串
String str = "200" ;
//方式1:使用Integer的构造方法
Integer ii = new Integer(str) ;
//Integer--->int
//public int intValue()
int number = ii.intValue();
System.out.println(number);
System.out.println("-------------------------------------");
//方式2: String---Integer----int
//public static Integer valueOf(String s)
Integer ii2 = Integer.valueOf(str);
int number2 = ii2.intValue();
System.out.println(number2);
//常用:方式3 经常使用
//public static int parseInt(String s)
int number3 = Integer.parseInt(str);
System.out.println(number3);
}
}
二、Date类
- java.util.Date类 :表示特定的瞬间,精确到毫秒
构造方法:
public Date():表示当前系统分配的系统时间(精确到毫秒)
public Date(long date):将long----Date日期格式
与1970年1月1日 0:0:0 GMT(格林威治时间)
第一个构造方法—获取当前系统时间!
举例:
public class DateDemo {
public static void main(String[] args) {
//创建一个Date类对象
Date date = new Date() ;
System.out.println(date);//Date格式
System.out.println("--------------------------");
//Thu May 20 10:41:45 CST 2021
//定义时间long
long time = 60 * 60 ;
//public Date(long date):
Date date2 = new Date(time) ;
System.out.println(date2);
}
}
-
成员方法:
public long getTime() ;获取时间毫秒数(返回值来自:1970年1月1日)开发中:
“2021-5-20”
注册表单上—输入了 日期时间 ------ > 提交后台: Date格式Date date = new Date() ; 获取当前系统时间:Date日期格式
Thu May 20 10:52:29 CST 2021 :Date日期格式 --------------------->String 日期文本格式 “2021-5-20” (格式化操作)
DateFormat 是日期/时间格式化子类的抽象类, 不能直接new
使用最具体的子类:SimpleDateFormat 日期 -> 文本 :格式化
文本-> 日期 :解析
- SimpleDateFormat如何使用
构造方法:
public SimpleDateFormat(String pattern)
yyyy:表示年
MM:月
dd:月中的日期
HH:时
mm:分钟
ss:秒
public String format(Date date) :格式化
public Date parse(String source) throws ParseException{}
举例:
public class DateDemo2 {
public static void main(String[] args) throws ParseException {
//Date日期格式----->文本:String :格式化
Date date = new Date() ;
System.out.println(date); //Thu May 20 11:01:39 CST 2021
//描述 "2021-5-20"
// public SimpleDateFormat(String pattern)
//创建SimpleDateFormat对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd") ;
//public String format(Date date) :格式化
String strDate = sdf.format(date);
System.out.println(strDate);
System.out.println("-----------------------------------------");
//String文本日期格式---->Date日期格式 : 解析过程
//public SimpleDateFormat(String pattern)
//注意:SimpleDateFormat的模式必须和String当前日期文本的格式一致
String source = "2022-5-20" ;
//创建SimpleDateFormart对象
// SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年MM月dd日") ;
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd") ;
// public Date parse(String source) throws ParseException{}
Date date2 = sdf2.parse(source) ;
System.out.println(date2);
//执行一段程序:计算执行效率!
/* long start = System.currentTimeMillis() ;
for(int x = 0; x < 1000000; x++){
System.out.println("hello"+x);
}
long end = System.currentTimeMillis() ;*/
// System.out.println("耗时:"+(end-start)+"毫秒");
/* Date date = new Date() ;
long time = date.getTime();
System.out.println(time);//1621478840499
Date date2 = new Date(time) ;
System.out.println(date2);*/
}
}
举例:
public class DateDemo2 {
public static void main(String[] args) throws ParseException {
//Date日期格式----->文本:String :格式化
Date date = new Date() ;
System.out.println(date); //Thu May 20 11:01:39 CST 2021
//描述 "2021-5-20"
// public SimpleDateFormat(String pattern)
//创建SimpleDateFormat对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd") ;
//public String format(Date date) :格式化
String strDate = sdf.format(date);
System.out.println(strDate);
System.out.println("-----------------------------------------");
//String文本日期格式---->Date日期格式 : 解析过程