系统中的常见类
在常见的类中,最常见的不过是String类了,关于它的介绍,用法,注意事项以及与StringBuilder和StringBuffer的区别,在前几天的博客中我已经进行了总结,链接我会放在文章的最后,有兴趣的可以了解下,学无止境~~
Object类
Object类是类层次结构的根类。每个类都使用 Object 作为父类。所有对象(包括数组)都实现这个类的方法。
简单来说就是,Object类是所有类的父类,包括我们所写的类,我们在使用类的时候就会利用Object类中的方法。
public class TestObj {
public static void main(String[] args) {
Object obj = new String("hello world");//Object 作为父类的引用指向子类实例
System.out.println(obj);
}
}
Date类
Date的两个构造函数。
// 获取了一个时间对象
// 注意,获取的时间是当前时间(本机)
Date date = new Date();
// 构造一个指定的时间,通过时间戳指定
Date d2 = new Date(20000L);//参数为long 毫秒数
System.out.println(d2);
获取时间戳
// 时间戳 1970.01.01 00:00:00 ~ 到当前这个时间的毫秒数
System.out.println(date.getTime());
LocalTime 类
public void testLocal() {
LocalTime lt = LocalTime.now();// 获取当前时间对象
System.out.println(lt.getHour());// 获取当前小时数
System.out.println(lt.getMinute());// 获取当前分钟
System.out.println(lt.getSecond());// 获取当前秒数
System.out.println(lt.getNano());// 获取当前纳秒数
LocalDate ld = LocalDate.now();// 如果使用日期,则使用LocalDate
System.out.println(ld.getMonthValue());// 获取当前月数
System.out.println(ld.getYear());// 获取当前年份
LocalDateTime ldt = LocalDateTime.now();
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss");//格式化时间,线程安全
System.out.println(ldt.format(df));
}
Calendar 日历类
public class TestCalendar {
public static void main(String[] args) {
// Calender 主要的作用就是在jdk提供补充Date类
Calendar calendar = Calendar.getInstance();
System.out.println(calendar.get(Calendar.YEAR));// 获取当前年份
System.out.println(calendar.get(Calendar.MONTH) + 1); 获取当前月份-1
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));// 获取当前是该月的第几天
System.out.println(calendar.get(Calendar.DATE));// 获取当前是该月的第几天
System.out.println(calendar.get(Calendar.WEEK_OF_MONTH));// 获取当前是该月的第几周
}
}
NumberFormat类
NumberFormat是Format子类,是java用来格式化数值的一个类。
public void testNumberFormat() {
// 获取系统默认的货币符号
NumberFormat numberFormat = NumberFormat.getCurrencyInstance();
String format = numberFormat.format(789135);
System.out.println(format);
// 指定格式化的标准
// 可以指定需要的国家货币符号
System.out.println(NumberFormat.getCurrencyInstance(Locale.FRENCH).format(45678213));
// 格式化数字为科学计数法
System.out.println(NumberFormat.getNumberInstance().format(123456789));
// 格式化为百分比
System.out.println(NumberFormat.getPercentInstance().format(0.5));
}
DecimalFormat类
public void testDecimalFormat() {
double num = 3.1415926;
// # 主要是在.之后,表示要保留的小数位
DecimalFormat df = new DecimalFormat("0.00");
String format = df.format(num);
System.out.println(format);//3.14
DecimalFormat df2 = new DecimalFormat("0E0");
System.out.println(df2.format(num));//3E0
}
BigDecimal类
主要用来处理大数据(位数),同时也提供准确计算大数据的方案。
public void testBigDecimal() {
// 计算机在存储浮点数,通过一种算法存储的,而不是真正的存储
// 在计算的时候,可能会出现精度的损失
System.out.println(0.1 + 0.2);//输出 0.30000000000000004
System.out.println(0.3 / 0.2);//输出 1.4999999999999998
// 注意,建议在使用BigDecimal是,将数据做成字符串,再转换
BigDecimal bc1 = new BigDecimal("0.1");
BigDecimal bc2 = new BigDecimal("0.2");
System.out.println(bc1.add(bc2));//输出 0.3
System.out.println(bc1.subtract(bc2));//输出 -0.1
System.out.println(bc1.multiply(bc2));//输出 0.02
System.out.println(bc1.divide(bc2));//输出 0.5
}
String类的链接:https://blog.csdn.net/jxcncb/article/details/107497400
以上都是个人理解,希望可以帮助到更多的人,如有错误,欢迎提出,将会进行及时修改。