日历类Calendar.Math 包装类 BigDeciml大数据对象

日历类Calendar

通过调用日历类的静态方法 getInstance得到一个当前此刻日期对象对应的日历对象

//创建日历对象

Calendarc=Calendar.getInstance();

//获取当前日期对象

Dated=c.getTime();

//创建简单的格式化对象来格式化日期对象

SimpleDateFormatsdf=newSimpleDateFormat("yyyy年MM月dd日 HH:mm:ss EEE a");

//格式化日期对象

Stringdate=sdf.format(d);

System.out.println(date);

//获取此刻的年份

intyear=c.get(Calendar.YEAR);

System.out.println(year);

//获取当前的月份

intmonth=c.get(Calendar.MONTH);

System.out.println(month);

//获取当前的一年中的天数

intday=c.get(Calendar.DAY_OF_YEAR);

System.out.println(day);

//获取此刻的日期对象

Datedate1=c.getTime();

//获取当前的时间毫秒值

longtime=c.getTimeInMillis();

//请问701天后的日期是多少

c.add(Calendar.DAY_OF_YEAR,701);

longtime1=c.getTimeInMillis();

//        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss EEE a");

Strings=sdf.format(time1);

System.out.println(s);

Math

Math用于做数学运算。

Math类中的方法全部是静态方法,直接用类名调用即可。

方法:

方法名

说明

publicstaticintabs(inta)获取参数a的绝对值:

publicstaticdoubleceil(doublea)向上取整

publicstaticdoublefloor(doublea)向下取整

publicstaticdoublepow(doublea,doubleb)获取a的b次幂

publicstaticlonground(doublea)

四舍五入取整

// 1.取绝对值:返回正数。

System.out.println(Math.abs(10));

System.out.println(Math.abs(-10.3));

// 2.向上取整: 5

System.out.println(Math.ceil(4.00000001));// 5.0

// 3.向下取整:4

System.out.println(Math.floor(4.99999999));// 4.0

// 4.求指数次方

System.out.println(Math.pow(2,3));// 2^3 = 8.0

// 5.四舍五入 10

System.out.println(Math.round(4.49999));// 4

System.out.println(Math.round(4.500001));// 5

// 1.终止当前虚拟机

//System.exit(0); // 0代表正常终止!!

// 2.得到系统当前时间毫秒值

longtime=System.currentTimeMillis();

SimpleDateFormatsdf=newSimpleDateFormat("yyyy/MM/dd HH:mm:ss");

System.out.println(sdf.format(time));

// 3.可以做数组的拷贝(了解)

int[]arrs1=newint[]{10,20,30,40,50,60,70};

int[]arrs2=newint[6];// [ 0 , 0 , 0 , 0 , 0 , 0]

// arrs2 = [0 , 30 , 40 , 50 , 0 , 0 ]

/**

arraycopy(Object src,int  srcPos ,Object dest, int destPos,  int length)

参数一:原数组

参数二:从哪个索引位置开始赋值

参数三:目标数组

参数四:目标数组的开始索引:

参数五:复制几个

*/

System.arraycopy(arrs1,2,arrs2,1,3);

System.out.println(Arrays.toString(arrs2));

System.out.println("程序结束。。。");

Arrays.toString(arr)  这样打印就能打印出数组的内容

BigDeciml大数据对象

引入:

浮点型运算的时候直接+*/可能会出现数据失真(精度问题)。

BigDecimal可以解决浮点型运算数据失真的问题。

BigDicimal类:

包:java.math.

创建对象的方式(最好的方式:)

publicstaticBigDecimalvalueOf(doubleval) :包装浮点数成为大数据对象。

方法声明

publicBigDecimaladd(BigDecimalvalue)加法运算

publicBigDecimalsubtract(BigDecimalvalue)减法运算

publicBigDecimalmultiply(BigDecimalvalue)乘法运算

publicBigDecimaldivide(BigDecimalvalue)除法运算

publicdoubledoubleValue():把BigDecimal转换成double类型。

*/

publicclassBigDecimalDemo{

publicstaticvoidmain(String[]args) {

// 浮点型运算的时候直接+  * / 可能会出现数据失真(精度问题)。

System.out.println(0.1+0.2);

System.out.println(0.09+0.01);

System.out.println(1.0-0.32);

System.out.println(1.015*100);

System.out.println(1.301/100);

System.out.println("-------------------------");

doublea=0.1;

doubleb=0.2;

doublec=a+b;

System.out.println(c);

// 1.把浮点数转换成大数据对象运算

BigDecimala1=BigDecimal.valueOf(a);

BigDecimalb1=BigDecimal.valueOf(b);

//BigDecimal c1 = a1.add(b1);  // 加法

BigDecimalc1=a1.divide(b1);// 除法

System.out.println(c1);

// 结果可能需要继续使用!!!

// BigDecimal只是解决精度问题的手段,double数据才是我们的目的!!

doublers=c1.doubleValue();

System.out.println(rs);

拓展:

BigDecimal只是解决精度问题的手段,double数据才是我们的目的!!        double rs = c1.doubleValue();        System.out.println(rs);

包装类

Java认为一切皆对象 引用数据类型就是对象了

基本数据类型包装类(引用数据类型)

byteByte

shortShort

intInteger(特殊)

longLong

floatFloat

doubleDouble

charCharacter(特殊)

booleanBoolean

把字符串类型的数值转换成对应的基本数据类型的值。(真的很有用)

// 2.把字符串类型的数值转换成对应的基本数据类型的值。(真的很有用)

StringnumStr="23";

//int numInt = Integer.parseInt(numStr);

intnumInt=Integer.valueOf(numStr);

System.out.println(numInt+1);

没啥用

// 1.把基本数据类型的值转成字符串

Integerit=100;

// a.调用toString()方法。

StringitStr=it.toString();

System.out.println(itStr+1);

// b.调用Integer.toString(基本数据类型的值)得到字符串。

StringitStr1=Integer.toString(it);

System.out.println(itStr1+1);

// c.直接把基本数据类型+空字符串就得到了字符串。

StringitStr2=it+"";

System.out.println(itStr2+1);

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。