Math类

Math类中包含一些对数据进行数学运算的方法,而该类中的方法全都是静态的。像这样的类称之为工具类。

 1 public static int abs(int a)
2 对一个数据求绝对值
3 public static double ceil(double n)
4 对一个小数向上取整 4.3 --> 5.0
5 public static double floor(double n)
6 对一个小数向下取整 4.3 --> 4.0
7 public static long round(double n)
8 对一个小数进行四舍五入 4.3 --> 4 ; 4.5 --> 5
9
10 public static int max(int a,int b)
11 求两个数的最大值
12 public static int min(int a,int b)
13 求两个数的最小值
14
15 public static double random()
16 生成[0,1)范围内的随机数

System类

 1 public static void exit(int n)
2 退出Java虚拟机 //System.exit(0);
3
4 public static long currentTimeMillis()
5 获取当前时间的毫秒值,距离1970年1月1日0时0分0秒之间的毫秒值
6
7 public static void arraycopy(Object src, int srcPos,Object dest,int destPos,int length)
8 把源数组中的元素复制到目标数组中。
9 参数:
10 src - 源数组。
11 srcPos - 源数组中的起始位置。
12 dest - 目标数组。
13 destPos - 目标数据中的起始位置。
14 length - 要复制的数组元素的数量。
15
16 int[] arrayA={1,2,3,4,5};
17 int[] arrayB=new int[2];
18 //把arrayA中的3和4这两个元素,赋值到arrayB中
19 System.arraycopy(arrayA,2,arrayB,0,2);

Object类

Object是所有类的父类,任何一个子类都可以调用Object的方法。

 1 public String toString()
2 把一个对象转换字符串。 字符串格式: 包名+类名@地址值。
3 每次打印对象,底层会自动去调用toString()方法。
4 注意:自己写的类,如果不想打印地址就可以复写toString()方法
5 快捷键:alt+inert-->toString()
6
7
8 public boolean equals(Object obj)
9 用来比较两个对象是否“相等“。
10 默认比较的是地址值,底层用的是"=="
11 注意:自己写的类,如果不想比较地址值可以重写equals()方法,比较自己的内容.
12 快捷键:alt+inert-->Equals and HashCode

Objects类

Objects类是一个工具类,经常用于对一个对象进行判空的处理。JDK7以后才有的

1 public static String toString(Object s,String defalutStr)
2 把一个对象转换为字符串, 如果对象为null,返回默认字符串
3 public static boolean isNull(Object s)
4 判断一个对象是否为null 等价于 s==null
5 public static boolean nonNull(Object s)
6 判断一个对象不为null 等价于 s!=null

BigDegimal类

BigDegimal可以做一些数据的精确运算,还可做一些较大数据的运算。

构造方法

1 public BigDecimal(double val)
2 使用double类型的小数,创建BigDecimal对象
3 public BigDecimal(String val)
4 使用String类型的数据(必须是纯数字),创建BigDecimal对象

四则运算的方法

 1 public BigDecimal add(BigDecimal augend)
2 对两个数进行加法运算
3 public BigDecimal subtract(BigDecimal subtrahend)
4 对两个数进行减法运算
5 public BigDecimal multiply(BigDecimal multiplicand)
6 对两个数进行乘法运算
7 public BigDecimal divide(BigDecimal divisor)
8 对两个数进行除法运算
9
10 public BigDecimal divide(BigDecimal divisor,int num,int type)
11 对两个数进行除法运算,可以保留小数个数.
12 参数:
13 BigDecimal divisor: 除数
14 int num:保留小数个数
15 int type: 保留小数的方式
16 BigDecimal.ROUND_HALF_UP 最后一位小数四舍五入
17 BigDecimal.ROUND_UP 最后一位小数不管满不满5都进1
18 BigDecimal.ROUND_FLOOR 最后一位小数不管慢不满5都舍弃
19
20 注意:需要运算的两个数,必须先封装尾BigDecimal对象,然后通过上面的方法进行运算。

基本数据类型包装类

每一个基本数据类型都有一个对应的包装类,并且提供了一些方法给开发人员使用。

1 基本数据类型        包装类
2 byte Byte
3 short Short
4 int Integer
5 long Long
6 float Float
7 double Double
8 boolean Boolean
9 char Character

获取Integer对象

1 Integer num1 = Integer.valueOf(100);
2 Integer num2 = Integer.valueOf("100");
3
4 //如果数据在-128~127范围内,得到的对象是同一个; 否则就是重新创建的对象.

自动装箱和自动拆箱

为了方便基本数据类型和包装类能够直接运算,所有Java提供了自动装箱和自动拆箱的机制。

1 //自动装箱: 基本类型(int) 自动转换为 包装类(Integer)
2 Integer num=100; //等价于 Integer num = Integer.valueOf(100);
3
4 //自动拆箱: 包装类(Integer) 自动转换为 基本类型(int)
5 int num2=num; //等价于 int num2 = num.intValue();

包装类的数据转换

如果一个字符串是纯数字的字符串(如: "12345"),不能做数值的数学运算,必须把字符串转换为数值,才能做数学运算。 这样的转换方法在包装类中已经提供了

字符串转其他的基本数据类型

 1 【口诀】:想要转为什么类型就找什么类型的包装类,调用parseXxx方法
2
3 //需求1:"12345"转换为12345
4 int num1=Integer.parseInt("12345");
5
6 //需求2: “3.14”转换为3.14
7 double num2=Double.parseDouble("3.14");
8
9 //需求3: "6.88"转换为6.88
10 float num3=Float.parseFloat("6.88");
11
12 ...

其他类型转换为字符串

1 1.直接和""做拼接,因为任何一个数据和字符串做拼接结果都是字符串
2 String s=100+"";
3
4 2.可以使用String类的valueOf方法
5 String s1=String.valueOf(100);
6 String s2=String.valueOf(3.14);

Arrays类

Arrays是一个工具类。Arrays类中提供了一些对数组进行操作的方法(比如:查找和排序)

1 public static int binarySearch(int[] array,int key)
2 对数组的元素进行二分查找。前提:元素必须是由顺序的
3 public static void sort(int[] array)
4 对数组进行排序。
5 public static String toString(int[] array)
6 把数组转换为字符串 格式:"[元素1,元素2,元素3]"

Java_常用类API之一的更多相关文章

  1. 生活常用类API调用的代码示例合集:邮编查询、今日热门新闻查询、区号查询等

    以下示例代码适用于 www.apishop.net 网站下的API,使用本文提及的接口调用代码示例前,您需要先申请相应的API服务. 邮编查询:通过邮编查询地名:通过地名查询邮编 今日热门新闻查询:提 ...

  2. 常用类-API文档-Integer

    package IntegerTest;import java.util.Base64.Decoder; public class test01 { /** * 包装类的基本数据类型 * int =& ...

  3. java.time包常用类API学习记录

    Java8出来已那么多年了,java.time包之前一直没有使用过,最近正好有用到,在此做个记录. 上图列出了java.time包下的类,接下来我们详细看下其中每个类的用法. Clock:获取到当前时 ...

  4. Java API 常用类(一)

    Java API 常用类 super类详解 "super"关键字代表父类对象.通过使用super关键字,可以访问父类的属性或方法,也可以在子类构造方法中调用父类的构造方法,以便初始 ...

  5. Java之Object类和常用的API

    Object类和常用的API 学习过程中的笔记,涉及到Objetc中的equals方法和toString方法,日期类Date,日历类Calendar,日期格式化类SimpleDateFormat以及基 ...

  6. 8.算法竞赛中的常用JAVA API :Calendar日期类

    8.算法竞赛中的常用JAVA API :Calendar日期类 摘要 在蓝桥杯中有关于日期计算的问题,正好java中的Date类和Calendar类提供了对日期处理的一些方法.Date类大部分方法已经 ...

  7. 6.算法竞赛中的常用JAVA API :Math类(转载)

    6.算法竞赛中的常用JAVA API :Math类 求最值 最小值 Math.min(int a, int b) Math.min(float a, float b) Math.min(double ...

  8. 算法竞赛中的常用JAVA API :大数类(转载)

    5.算法竞赛中的常用JAVA API :大数类 摘要 java中的基础数据类型能存储的最大的二进制数是 2 ^ 63 - 1 对应的十进制数是9223372036854775807(long类型的最大 ...

  9. String类常用的API

    String类常用的API 字符串内容的比较: 注意: 不能使用 == 去比较两个字符串的内容.原理:比较的是字符串的地址. (如果两个字符串都是使用""进行赋值,那么他们都是放在 ...

随机推荐

  1. IPFS是什么?IPFS与Filecoin有什么关系?

    Filecoin 基于 IPFS 的去中心化存储网络,是 IPFS 上唯一的激励层,是一个基于区块链技术发行的通证.Filecoin 翻译过来就是文件币,简称为 FIL. 在 FIlecoin 网络中 ...

  2. teprunner测试平台Django引入pytest完整源码

    本文开发内容 pytest登场!本文将在Django中引入pytest,原理是先执行tep startproject命令创建pytest项目文件,然后从数据库中拉取代码写入文件,最后调用pytest命 ...

  3. DAOS 分布式异步对象存储|安全模型

    DAOS 使用了一个灵活的安全模型,将身份验证和授权分离开来.它的设计令其对 I/O 的影响被降到最小. DAOS 对用于 I/O 传输的网络结构没有提供任何传输安全性保障.在部署 DAOS 时,管理 ...

  4. 洛谷P1290欧几里德游戏

    题目地址 题目大意: 两个人st和ol博弈 有两个整数n,m 每次轮到一个人时候,需要选择用大的那个数减去小的那个数的倍数(不能减为负数) 最后得到0的为胜利者 思路: (以下讨论均在n<m的条 ...

  5. 分享15个实用VSCode插件,快来收藏吧!

    Visual Studio Code 是由微软开发的一款免费.跨平台的文本编辑器.它有卓越的性能和丰富的功能.VSCode 也有一个扩展和主题市场,为了帮助大家挑选出值得下载的插件,我们针对性的收集了 ...

  6. Kubernetes 常见问题总结

    Kubernetes 常见问题总结 如何删除不一致状态下的 rc,deployment,service 在某些情况下,经常发现 kubectl 进程挂起现象,然后在 get 时候发现删了一半,而另外的 ...

  7. 常见SQL命令总结学习 -- <1>

    SQL学习网练习记录 参考1:http://sample.jimstone.com.cn/xsql/Course/4.html 参考2:http://sample.jimstone.com.cn/xs ...

  8. [游记]2020/CSP - S总结

    2020 / C S P − S 总 结 2020/CSP - S总结 2020/CSP−S总结 这年的 C S P CSP CSP考的不是很理想,本来稳进的 C S P − J CSP-J CSP− ...

  9. 设计Web页面(2)

    1.前面我们新建了一个空白的ASP.NET网页,那么接下来这章我们就讲一下设计Web页面 2.布局页面有两种方法,一种是通过Table表格来布局页面窗体,另一种是通过CSS+DIV来布局窗体,其中作为 ...

  10. vue篇之路由详解

    一.vue路由传参的几种方式 1.声明式 router-link 父组件:<router-link :to="`/path/${id}`"><router-lin ...