Java常用类(完结)

【摘要】 可变字符串
○StringBuffer:可变长字符串,JDK1.0提供,运行效率慢,线程安全。
○StringBuilder:可变长字符串,JDK5.0提供,运行效率快,线程不安全。
BigDecimal
○思考:以下程序输出结果是多少?
public class TestBigDecimal{ public static void main(String[]…

可变字符串

○StringBuffer:可变长字符串,JDK1.0提供,运行效率慢,线程安全。

○StringBuilder:可变长字符串,JDK5.0提供,运行效率快,线程不安全。

BigDecimal

○思考:以下程序输出结果是多少?

public class TestBigDecimal{ public static void main(String[] args){ double d1=1.0; double d2=0.9; SyStem.out.println(d1-d2); }
}

  
 

输出结果:0.999999999999999998

很多实际应用中需要精确运算,而double是近似值存储,不在符合要求需要借助BigDecimal。

○位置:java.math包中

○作用:精确计算浮点数。

○创建方式:BigDecimal bd=new BigDecimal(“1.0”);

○方法:

○BigDecimal add(BigDecimal bd) 加

○BigDecimal subtract(BigDecimal bd)减

○BigDecimal multiply(BigDecimal bd)乘

○BigDecimal divide(BigDecimal bd)除

○利用BigDecimal可以使用数值计算:

public class TestBigDecimal{ public static void main(String[] args){ BigDecimal bd1=new BigDecimal("1.0"); BigDecimal bd2=new BigDecimal("0.9"); BigDecimal result1=bd1.add(bd2); System.out.println("bd1+bd2="+result1); BigDecimal result2=bd1.subtract(bd2); System.out.println("bd1-bd2="+result2); BigDecimal result3=bd1.subtract(bd2); System.out.println("bd1*bd2="+result3); //输出结果: bd1+bd2=1.9; bd1-bd2=0.1; bd1*bd2=0.90; //执行除法运算时,抛出错误 //BigDecimal result4=bd1.divide(bd2); //System.out.println("bd1/bd2="+result4); }
}

  
 

注意:进行除法运算时,如果不能准确的计算出结果时需要指定保留的位数和取舍方式。

○除法:divide(BigDecimal bd,int scal,RoundingModel mode)

○参数scal:指定精确到小数点后几位。

○参数mode:

○指定小数部分的取舍模式,通常采用四舍五入的模式,

○取值为BigDecimal,ROUND_HALF_UP.

Date

○Date表示特定的瞬间,精确到毫秒。Date类中的大部分方法都已经被Calendar类中的方法所取代。

○时间单位

​ ○1秒=1000毫秒

​ ○1毫秒=1000微妙

​ ○1微妙=1000纳秒

Calendar

○Calendar提供了获取或设置各种日历字段的方法。

○构造方法

○protected Calendar() :由于修饰符是protected,所以无法直接创建该对象。

○其他方法

//方法名 说明
static Calendar getInstance() 使用默认时区和区域获取日历 void set(int year,int month,int date,int
hourofday,int minute,int second) 设置日历的年、月、日、时、分、秒
int get(int field) 返回给定日历字段的值。字段比如年、月、日等
void setTime(Date date) 用给定的Date设置此日历的时间。Date-Calendar
Date getTime() 返回一个Date表示此日历的时间。Calendar-Date
void add(int field,int amount) 按照日历的规则,给指定字段添加或减少时间量
long getTimelnMillies() 毫秒为单位返回该日历的时间值 
  
 

SimpleDateFormat

○SimpleDateFormat是一个以与语言环境有关的方式来格式化和解析日期的具体类。

○进行格式化(日期 -> 文本)、解析(文本 -> 日期)

○常用的时间模式字母

//字母 日期或时间 实例
  y 年 2019 M 年中月份 08
  d 月中天数 10
  H 1天中小时数(0-23) 22
  m 分钟 16
  s 秒 59
  S 毫秒 367 
  
 

System类

○System系统类,主要用于获取系统的属性数据和其他操作,构造方法私有的。

//方法名 说明
static void arraycopy(...) 复制数组
static long currentTimeMillis(); 获取当前系统时间,返回的是毫秒值
static void gc(); 建议JVM赶快启动垃圾回收器回收垃圾
static void exit(int status); 退出jvm,如果参数是0表示正常退出jvm,非0表示异常退出jvm。

  
 

总结

○内部类:

○在一个类的内部再定义一个完整的类。

○成员内部类、静态内部类、局部内部类、匿名内部类。

○Object类:

○所有类的直接或间接父亲,可存储任何对象。

○包装类:

○基本数据类型所对应的引用数据类型,可以使Object统一所有数据。

○String类:

○字符串是常量,创建之后不能改变,字面值保存在字符串池中,可以共享。

○BigDecimal

○可精确计算浮点数。

○Date

○特定时间

○Calendar

○日历

○SimpleDateFormat

○格式化时间

○System

○系统类

文章来源: blog.csdn.net,作者:认准·小東子এ,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_50561839/article/details/115771256

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享