包装类和日期操作

来源:互联网 发布:淘宝巴拉巴拉羽绒服 编辑:程序博客网 时间:2024/06/05 20:40

Java 包装类

字符串广泛应用 在Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。

 Number类

Test2.java 文件代码:

//包装类
//Number 数字类(包括整数和小数) Byte Short Integer Long Float Double
//Number是Byte Short Integer Long Float Double的父类,都是引用类型
public class Test1 {
public static void main(String[] args) {
// int a=3;
// Integer a1=new Integer(3);
// System.out.println(Integer.MAX_VALUE);//int可以取得最大值
// System.out.println(Integer.MIN_VALUE);//int可以取得最小值
//从基本类型转成引用类型为装箱
Number d=Double.valueOf(123.45);//将基本类型123.45转成引用类型Double,再向上造型为Number
System.out.println("查看引用所指向的对象类型:"+d.getClass().getName());
Number n=Integer.valueOf(123);
System.out.println("n="+n);
//从引用类型到基本类型  拆箱
int value=n.intValue();//将Integer引用类型拆成int基本类型  
double value1=d.doubleValue();//将Double引用类型拆成double基本类型
System.out.println(value+","+value1);
}


}

将字符串转成相应的基本类型

Test3.java 文件代码:

//将字符串转成相应的基本类型
public class Test2 {
public static void main(String[] args) {
// String str=String.valueOf(3);//把其它类型转成字符串类型
// System.out.println("str="+str);
String str="123";
int value=Integer.parseInt(str);//将字符串转成整数
System.out.println("value="+value);
// String str1="一二三";
// //java.lang.NumberFormatException
// int value1=Integer.parseInt(str1);//"一二三"不是正确的数字格式
// System.out.println("value1="+value1);
String str2="12345.657";
double value2=Double.parseDouble(str2);
System.out.println("value2="+value2);
Character c=new Character('a');

}


}

拆箱与装箱

下面是一个例子:

Test4.java 文件代码:

//装箱 int-->Integer       拆箱Integer-->int
public class Test3 {

public static void main(String[] args) {
Integer a=Integer.valueOf(100);//装箱int-->Integer
Integer b=Integer.valueOf(200);//装箱int-->Integer
//a.intValue()+b.intValue()拆箱 Integer-->int    Integer.valueOf(a.intValue()+b.intValue() 装箱int-->Integer  
Integer c=Integer.valueOf(a.intValue()+b.intValue());
int d=c.intValue();//c.intValue()  拆箱 Integer-->int
System.out.println("d="+d);


}


}

Date类的时间操作

//时间操作
//Date类
public class Test4 {
public static void main(String[] args) {
//获取当前的毫秒数  1秒==1000毫秒
long time=System.currentTimeMillis();
System.out.println("当前的毫秒数:"+time);

//Date类封装了日期及时间信息
Date date=new Date();//创建Date对象默认获得了系统的当前日期及时间信息
//输出此时此刻的日期和时间
System.out.println("date="+date.toString());
//把Date类型变成毫秒数
long time1=date.getTime();
System.out.println("time1="+time1);
long time2=24*60*60*1000;//一天的毫秒数
time1=time1+time2;//加上一天的毫秒数
date.setTime(time1);//将毫秒数转成Date类型
System.out.println("第二天的日期和时间:"+date);


}


}

时间的格式化

//格式化 (日期-->文本)
public class Test5 {
public static void main(String[] args) throws ParseException {
//格式化 (日期-->文本)
Date date=new Date();
System.out.println("date="+date);//输出的格式不符合国人的阅读习惯
//2017-04-19 11:29:45
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr=sdf.format(date);//对Date类型的时间格式化
System.out.println("dateStr="+dateStr);

//格式化 (文本-->日期)
//将字符串时间转成Date类型
String str="1999-02-19";
SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd");
Date date1=sdf1.parse(str);
System.out.println("date1="+date1);

Character c=new Character('a');
}


}

Calendar类操作日期和时间

//Calendar 
//Calendar类提供了一系列的方法操作日期和时间
public class Test7 {
//Calendar>Date>longtime
public static void main(String[] args) {
// Date date=new Date();
// Date date1=new Date(117,3,19);//默认+1900   117+1900=2017
// System.out.println("date1="+date1);

Calendar c=Calendar.getInstance();//通过一个方法返回一个实例
//Calendar c1=new GregorianCalendar();//向上造型
System.out.println("c="+c);
///从Calendar类型转换成Date类型
Date date=c.getTime();
System.out.println("date="+date);


}


}

Calendar类设置时间



//Calendar设置时间
public class Test8 {
public static void main(String[] args) {
//获取Calendar对象  Calendar是一个抽象类不能实例化
//Calendar c1=new GregorianCalendar();
Calendar c=Calendar.getInstance();//可以通过Calendar类里的static方法getInstance()获取GregorianCalendar对象
c.set(Calendar.YEAR, 2017);//设置年份为2017年
c.set(Calendar.MONTH,Calendar.APRIL);//设置月份为4月
c.set(Calendar.DATE, 19);//设置在此月的第几天

System.out.println("c.getTime()="+c.getTime());//c.getTime()   Calendar-->Date
//2017/4/19 14:16
SimpleDateFormat sdf=new SimpleDateFormat("yyyy/M/dd HH:mm");
String time=sdf.format(c.getTime());
System.out.println("time="+time);
}


}

Calendar类获取时间

//Calendar获取时间
public class Test9 {
public static void main(String[] args) {
Calendar c=Calendar.getInstance();//存储的是系统当前时间
System.out.println(c.getTime());
Calendar c1=Calendar.getInstance();
c1.set(Calendar.YEAR,2017);//给年设置为2017
System.out.println("c1="+c1.getTime());
System.out.println("year="+c1.get(Calendar.YEAR));//获取设置的年份
System.out.println("month="+c1.get(Calendar.MONTH));// 3  表示四月
System.out.println("date="+c1.get(Calendar.DATE));//月上面的天数

int dayOfWeek=c1.get(Calendar.DAY_OF_WEEK);
System.out.println("dayOfWeek="+dayOfWeek);//是这一周的第几天  国外认为星期日是第一天 1




}


}

long,Date,Calendar几种类型之间的转换

/*
将Calendar>getTime()>Date>getTime()>timeMillis  
timeMillis>setTime()>Date>setTime()>Calendar
 */
public class Test12 {
public static void main(String[] args) {
Calendar c=Calendar.getInstance();
c.add(Calendar.YEAR,1);//加一年
c.add(Calendar.MONTH, 1);//加一月
c.add(Calendar.DATE, 1);//加一天
System.out.println("c="+c.getTime());

Date date=c.getTime();//Calendar-->Date
long time=date.getTime();//Date-->long

long time1=1444444444444L;
Date date1=new Date();
date1.setTime(time1);//long-->Date
System.out.println("date1="+date1);
Calendar c1=Calendar.getInstance();
c1.setTime(date1);//Date-->Calendar
System.out.println("c1="+c1);


}


}
0 0
原创粉丝点击