Java中常用类和方法(Number&Math)

Posted 肌肉猿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中常用类和方法(Number&Math)相关的知识,希望对你有一定的参考价值。

Java中常用类和方法(Number&Math)

包装类

在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情形。为了解决这个问题,Java 语言为每一个内置数据类型提供了对应的包装类。

基本数据类型 byte short int long float double char boolean
包装类 Byte Short Integer Long Float Double Character Boolean

装箱和拆箱

? 装箱:自动将基本数据类型转换成包装器类型。

Integer a = 128;  // 装箱,相当于 Integer.valueOf(128);

? 拆箱:自动将包装器类型转换为基本数据类型。

int t = a; //拆箱,相当于 a.intValue() 

方法

? toString() :将数字以字符串形式返回

String s1 = Byte.toString((byte)1);

? XXXValue() : 将包装类对象转换成基本类型数据

Byte b1 = 1;  
byte b2 = b1.byteValue(); //拆箱

? ValueOf() : 将基本类型数据转换成包装类

Integer intvalue = Integer.valueOf(123);

? parseXXX() : 包装类的静态方法 - 字符串转数字(Character除外)

int a = Integer.parseInt("111");
boolean b = Boolean.parseBoolean("true");

Number类

floor直接取其含义,也就是“地板”,地板在脚下,即向下取整

ceil****是ceiling的缩写,也就是“天花板”,天花板在头顶上,即向上取整**。

round()的四舍五入取整。将传入的数字加上+0.5后再向下取整

double d = 100.675;
float f = -90;

System.out.println(Math.floor(d));	//100.0
System.out.println(Math.floor(f));	//-90.0

System.out.println(Math.ceil(d));	//101.0
System.out.println(Math.ceil(f));	//-90.0

System.out.println(Math.round(d));	//101.0

Random类

此类的实例用于生成为伪随机数。

可以传入参数设置种子数,相同种子数的Random对象,相同种子数生成的随机数字是完全相同的。

Random random = new Random();
random.setSeed(50); //设置种子数
for (int i = 0; i < 10; i++) {
    System.out.print(random.nextInt(10) + "-");
}
Random  random2 = new Random(50); //设置相同种子数
for (int i = 0; i < 10; i++) {
    System.out.print(random2.nextInt(10) + "-");
}

String类

length():字符串长度

equals():比较内容

equalsIgnoreCase():忽略大小写比较内容

toLowerCase():转换为小写

toUpperCase():转换为大写

concat():拼接字符串

indexOf():查找字符第一个出现的位置

lastIndexOf():查找最后一个出现的位置

subString():截取字符串,包前不包后

trim():去除前后的空格

startsWith():判断是否以某个字符串开头

endsWith():判断是否以某个字符串结尾

split():分割字符串为String数组

replace():替换字符串

replaceAll():可以支持正则表达式替换字符串

Runtime类(不能直接new对象)

Runtime.getRuntime() - 获取一个Runtime实例 new一个Runtime
方法:
mammary() - 物理内存
totalMemory() - jvm总内存
freeMemory() - 空闲内存
exec() 执行可执行文件
gc() 调用垃圾回收机制 但不是立即调用
exit() 退出jvm虚拟机

System类

表示系统类,可以获取一些当前计算机的一些信息,比如操作系统版本,jdk版本等

getProperties() - 获取当前计算机相关的信息集合,是一个Properties对象

//获取当前计算机的一系列信息
Properties properties = System.getProperties();

System.out.println(properties.getProperty("java.version"));
System.out.println(properties.getProperty("user.name"));
System.out.println(properties.getProperty("os.name"));
System.out.println(properties.getProperty("os.version"));

Date日期类

Date日期类,用于获取时间

Date()无参构造获取当前系统时间

Date(long time);也可以根据传入的毫秒数指定一个时间

Calender日历类

日历类:跟Date类功能相似,但是很多方法目前是推荐使用

Calendar calendar = Calendar.getInstance();
System.out.println("一个月中的第几天:" + calendar.DAY_OF_MONTH);
System.out.println("一周中的第几天:" + calendar.DAY_OF_WEEK);
System.out.println("一年中的第几天:" + calendar.DAY_OF_YEAR);
System.out.println("一天中的小时数:" + calendar.HOUR_OF_DAY);

SimpleDateFormat类

格式化日期类。

参数("yyyy / MM / dd HH : mm : ss") 参数可自定义,但字符不能改变

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
System.out.println(sdf.format(new Date())); //2020/07/11 17:11:33

StringBuffer和StringBuilder类

当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder类。

和 String 类不同的是,StringBuffer 和 StringBuilder类的对象能够被多次的修改,并且不产生新的未使用对象。

StringBuffer:线程安全

StringBuilder:线程不安全(不能同步访问),但是速度更快

StringBuffer stringBuffer = new StringBuffer("Java:");
stringBuffer.append("Hello");
stringBuffer.append("World!");
System.out.println(stringBuffer);  //Java:HelloWorld!







以上是关于Java中常用类和方法(Number&Math)的主要内容,如果未能解决你的问题,请参考以下文章

我的java学习之路六:java的常用类

常用方法--Number&Math

Java类和对象&&封装&&构造方法分析

Java中常用日期操作及方法

Hutool中那些常用的工具类和方法

Java常用类 Scanner类和大数类