码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2020-07-20 22:37:42      阅读:88      评论:0      收藏:0      [点我收藏+]

标签:伪随机   str   装箱   功能   builder   instance   集合   time   time()   

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)

标签:伪随机   str   装箱   功能   builder   instance   集合   time   time()   

原文地址:https://www.cnblogs.com/MonkeySun/p/13347184.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!