经常使用的系统类Math、Arrays、System、BigInteger和BigDecimal以及日期类,时间戳
一、Math
常用类:
//看看Math常用的方法(静态方法)
//1.abs绝对值
int abs = Math . abs(-9);
System. out . printLn(abs);//9
//2.pow 求幂
doubLe pow = Math.pow(2, 4);
System. out . printLn(pow);//16
//3.ceil向上取整,返回>=该参数的最小整数(转成Double类型);
double ceil = Math. ceil(-3.0001) ;
System. out. printLn(ceil);//-3
//4.floor向下取整,返回<=该参数的最大整数
double fLoor = Math. floor(-4.999);
System. out. printLn(floor);//-5
//5.round 四舍五入Math. floor(该参数+0.5)
Long round = Math . round(-5.001) ;
System. out. printLn(round);//-5
//6.sqrt 求开方
double sqrt = Math. sqrt(9.0);
System. out。printLn(sqrt);//3.0
//7.生成随机数 random():返回值是[0.1)之间的的数;
//8.比较得到两个数的最大值和最小值
//Math.max(23,45);//45
//Math.min(12,23);//12
二、Arrays
Arrays里面包含了系列静态方法, 用于管理或操作数组(比如排序和搜索)。
1) toString返回数组的字符串形式
Arrays.toString(arr)
2) sort排序(自然排序和定制排序)
自然排序:从小到大:Integer arr[] = {1,-1, 7, 0, 89};
Arrays.sort(arr);
定制排序:可通过自定义的内部匿名类实现从大到小排序;
(1).可以直接使用冒泡排序,也可以直接使用Arrays提供的sort方法排序
(2).因为数组是引用类型,所以通过sort排序后,会直接影响到实参arr
(3). sort重载的,也可以通过传入一个接口Comparator 实现定制排序
(4).调用定制排序时,传入两个参数
(4.1) 排序的数组arr
(4.2)实现了Comparator接口的匿名内部类,
要求实现
compare方法

在底层对内部匿名类进行调用:

3) binarySearch通过二分搜索法进行查找,要求必须排好序
int index = Arrays.binarySearch(arr, 3);

4)copyOf的使用

复制整个数组

5)fill数组元素的填充

6)equals比较两个数组:元素相同返回true,反之false

7)将一个数组转换为一个列表


运行结果:

三、System
1、System类常见方法和案例

(1)Sysout.exit(0);正常退出程序,0表示一个正常的状态,一般退出都用0
(2)System.arraycopy(src,0,dest,0,3);

src和dest是自己定义出来的列表;
(3)system.currentTimeMillens ():返回当前时间距离1970-1-1 的毫秒数
四、BigInteger和BigDecimal
1、应用场景:
1) BigInteger适合保存比较大的整型
2) BigDecimal适合保存精度更高的浮点型(小数)
大数的初始化和运算:

高精度浮点数
五、日期类
Date:经过发展,目前的类已经到达第三代
第一代:

获取系统默认时间

对时间进行格式化;
第二代:Calender
Calender的实现和继承

非常的灵活,Calender提供的属性选择非常的多,可以选择自己想要的格式输出:

第三代:
出现第三代日期类的分析:

1) LocalDate(日期/年月日)、LocalTime(时间/时分秒)、LocalDateTime(日期时
间/年月日时分秒) JDK8加入
LocalDate只包含日期,可以获取日期字段
LocalTime只包含时间,可以获取时间字段
LocalDateTime包含日期+时间,可以获取日期和时间字段
实现的类和继承的类:

常用方法和使用的类型

2)DateTrimeFormatter格式日期类(类似于:SimpleDateFormat)
Date TimeFormat dtf = Date TimeFormatter.ofPattern(格式);
String str = dtf.format(日期对象);
更多的方法
LocalDateTime类
MonthDay类:检查重复事件
是否是闰年
增加日期的某个部分
使用plus方法测试增加时间的某个部分
使用minus方法测试查看一年前和一年后的日期

3)Instant:时间戳

案例使用细节 
3 import java.text.SimpleDateFormat;
4 import java.time.Instant;
5 import java.util.Date;
6
7 public class Date_ {
8 public static void main(String[] args) {
9
10 //生成一个Instant时间戳
11 Instant now = Instant.now();
12 System.out.println(now);
13
14 //将Instant时间戳转换为Date格式
15 Date date = Date.from(now);
16 System.out.println(date);
17
18 //将Date的时间类型进行格式化
19 SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日 hh时mm分ss秒");
20 String format1 = format.format(date);
21 System.out.println(format1);
22
23 //将Date类型的时间转换为Instant时间戳
24 Instant instant = date.toInstant();
25 System.out.println(instant);
26
27 }
28 }
运行的结果:

经常使用的系统类Math、Arrays、System、BigInteger和BigDecimal以及日期类,时间戳的更多相关文章
- Java中的常用类:包装类、String、StringBuffer、StringBuilder、Math、System、Arrays、BigInteger、BigDecimal、Data、Calendar
一.包装类 √ 二.String类 ★ 三.StringBuffer和StringBuilder类 ★ 四.Math类 五.System类 六.Arrays类 七.BigInteger类和BigDec ...
- 3.1常用类(java学习笔记)包装类及日期类
一.包装类 java是一门面向对象的语言,秉承一切皆对象的思想. 可java中有一些基本数据类型并不是对象,有时可能需要将它们变为对象. 这时就需要用到我们的包装类了. 基本数据类型 包装类 int ...
- Java 基础 常用API (System类,Math类,Arrays, BigInteger,)
基本类型包装类 基本类型包装类概述 在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的.而程序开发中,我们需要把字符串数据,根据需求转换成指定的基本数据类型,如年龄需要转换成int类 ...
- [Day17]常用API(System、Math、Arrays、BigInteger、BigDecimal)
1.基本类型包装类 1.1 8种基本类型对应的包装类 字节型 byte Byte 短整型 short Short 整型 int Integer 长整型 long Long 字符型 char Chara ...
- 六 一些常用类:Random、BigInteger、BigDecimal、DecimalFormat
常用类:
- 日期类的加减及java中所以日期类的操作算法大全
1.计算某一月份的最大天数 1Calendar time=Calendar.getInstance();2time.clear();3time.set(Calendar.YEAR,year); //y ...
- JAVA基础学习之final关键字、遍历集合、日期类对象的使用、Math类对象的使用、Runtime类对象的使用、时间对象Date(两个日期相减)(5)
1.final关键字和.net中的const关键字一样,是常量的修饰符,但是final还可以修饰类.方法.写法规范:常量所有字母都大写,多个单词中间用 "_"连接. 2.遍历集合A ...
- Java 之 数学相关类 Math、BigInteger、BigDecimal
一.java.lang.Math 类 一.Math 类概述 java.lang.Math 类包含用于执行基本数学运算的方法,如指数.对数.平方根和三角函数.类似于这样的类,其所有方法均为静态方法,并且 ...
- java异常,异常处理,异常类 关键字:throws 和 throw 自定义的异常类
package cn.kecheng; import java.util.Scanner; /**异常:异常是指在程序的运行过程中所发生的不正常的情况,它会中断正在运行的程序 异常处理机制:java中 ...
随机推荐
- 来自MyBatis不一样收获结果的探索之旅-v3.5.9
概述 定义 MyBatis官网 https://mybatis.org/mybatis-3/ 最新版本为3.5.9 MyBatis是一个的ORM框架,支持自定义SQL.存储过程和高级映射.MyBati ...
- Django在使用logging日志模块时报错无法操作文件 logging error Permission Error [WinError 32]
产生原因: 这个问题只会在开发的时候遇到,而且配置是写入到setting.py配置文件,我们定义了日志文件大小,当日志满了的时候,这时候就会遇到这个问题, 因为在使用Pycharm运行django的时 ...
- Python_PyYaml模块的使用
YAML是一种比XML和JSON更轻的文件格式,也更简单更强大,它可以通过缩进来表示结构. 模块安装 pip install pyyaml # 如果是py2,使用 pip install yaml P ...
- 初识python 之 兔子生崽(小练习)
题目:有一对兔子,从出生后第三个月起每个月都生一对小兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子不死,每个月的兔子总数为多少?思路分析: 月份 兔子数 规律1 2 2**12 2 2**13 ...
- Python中类的变量,一个下划线与两个下划线的区别
形似 功能 __xx 这是私有变量, 只有内部可以访问,外部不可以访问.但是也不是一定不可以访问,只要以 _类名__xx样式就可以访问 .但最好不要这样做,养成良好编程习惯 _x 这是实例 ...
- 谈谈 StringBuffer 和 StringBuilder 的历史故事
1.前言 众所周知,StringBuffer 是线程安全的 ,而StringBuilder 不是线程安全的 ,但是 StringBuilder 速度会更快. 事实上 作为一个字符串拼接 方法 ,在线 ...
- spring security 继承 WebSecurityConfigurerAdapter 的重写方法configure() 参数 HttpSecurity 常用方法及说明
HttpSecurity 常用方法及说明 方法 说明 openidLogin() 用于基于 OpenId 的验证 headers() 将安全标头添加到响应 cors() 配置跨域资源共享( CORS ...
- Educational Codeforces Round 117 (Rated for Div. 2)
Educational Codeforces Round 117 (Rated for Div. 2) A. Distance https://codeforces.com/contest/1612/ ...
- UDP代码编写、操作系统发展史、多道技术、进程理论与代码层面创建、进程join方法与进程对象方法
昨日内容回顾 socket基本使用 # 内置的模块 import socket s = socket.socket() # 默认是TCP协议 也可以切换为UDP协议 s.bind((ip,port)) ...
- VUE3 之 全局组件与局部组件
1. 概述 老话说的好:忍耐是一种策略,同时也是一种性格磨炼. 言归正传,今天我们来聊聊 VUE 的全局组件与局部组件. 2. 全局组件 2.1 不使用组件的写法 <body> < ...