经常使用的系统类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中 ...
随机推荐
- python连接真机或模拟器
前言: 最近写自动化代码的时候,使用模拟器运行 python + appium代码时,APP闪退了,只能使用真机运行代码了.真机要怎么配置设备的信息呢? 怎么配置设备的信息? 配置是使用真机还是模拟器 ...
- Selenium_获取元素文本、属性值、尺寸(8)
from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.get(" ...
- 编写Hive的UDF(查询平台数据同时向mysql添加数据)
注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6812629187518530052/ 可能会有一些截图中会有错误提示,是因为本地的包一直包下载有问题,截完图已经下 ...
- STC8H开发(四): FwLib_STC8 封装库的介绍和注意事项
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) ST ...
- docker镜像制作及发布
以centos为例. 主要内容:安装docker,制作镜像,发布镜像. 安装docker 1. 安装docker yum install -y docker 等待一会,安装成功,查看安装列表 2. 启 ...
- 【reverse】逆向7 堆栈图
[reverse]逆向7 堆栈图 前言 本章就是开始画堆栈图来打基础拉,堆栈熟悉了之后就可以开始C语言的逆向了. 这一章使用的exe文件,我已经上传到了我的个人网盘中,点击下载 1.准备工作 先看这张 ...
- windows+goland+gometalinter进行本地代码检查(高圈复杂度、重复代码等)
1.下载gometalinter release地址为:https://github.com/alecthomas/gometalinter/releases/tag/v3.0.0 下载windows ...
- Python中hash加密
目录 简介 概念 特点 hash有哪些 算法碰撞 加盐防碰撞 加密 hashlib 主要方法 特有方法 使用方法 加盐 crypt 主要方法 使用说明 应用 密码加密 应用一致性校验 简介 概念 散列 ...
- C++11多线程之future(一)
// ConsoleApplication5.cpp : 定义控制台应用程序的入口点. #include "stdafx.h" #include<random> #in ...
- 推荐一个github国内访问加速神器GitHub520
一.介绍 对 GitHub 说"爱"太难了:访问慢.图片加载不出来. 注: 本项目还处于测试阶段,仅在本机测试通过,如有问题欢迎提 issues 本项目无需安装任何程序,通过修改本 ...