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)的主要内容,如果未能解决你的问题,请参考以下文章