(五)Java常用类之其他 | 【奔跑吧!JAVA】

网友投稿 667 2022-05-29

1、System类

1.1、概述

System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。 由于该类的构造器是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员变量和成员方法都是static的,所以也可以很方便的进行调用。

1.2、成员变量

System类内部包含in、out和err三个成员变量,分别代表标准输入流(键盘输入),标准输出流(显示器)和标准错误输出流(显示器)。

1.3、成员方法

native long currentTimeMillis():该方法的作用是返回当前的计算机时间,时间的表达格式为当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的毫秒数。 void exit(int status):该方法的作用是退出程序。其中status的值为0代表正常退出,非零代表异常退出。使用该方法可以在图形界面编程中实现程序的退出功能等。 void gc():该方法的作用是请求系统进行垃圾回收。至于系统是否立刻回收,则取决于系统中垃圾回收算法的实现以及系统执行时的情况。 String getProperty(String key):该方法的作用是获得系统中属性名为key的属性对应的值。系统中常见的属性名以及属性的作用如下表所示:

1.4、举例

public class SystemTest { public static void main(String[] args) { String javaVersion = System.getProperty("java.version"); System.out.println("java的version:" + javaVersion); String javaHome = System.getProperty("java.home"); System.out.println("java的home:" + javaHome); String osName = System.getProperty("os.name"); System.out.println("os的name:" + osName); String osVersion = System.getProperty("os.version"); System.out.println("os的version:" + osVersion); String userName = System.getProperty("user.name"); System.out.println("user的name:" + userName); String userHome = System.getProperty("user.home"); System.out.println("user的home:" + userHome); String userDir = System.getProperty("user.dir"); System.out.println("user的dir:" + userDir); } }

2、Math类

2.1、概述

java.lang.Math提供了一系列静态方法用于科学计算。其方法的参数和返回值类型一般为double型。

2.2、常用方法

abs 绝对值 acos,asin,atan,cos,sin,tan 三角函数 sqrt 平方根 pow(double a,doble b) a的b次幂 log 自然对数 exp e为底指数 max(double a,double b) min(double a,double b) random() 返回0.0到1.0的随机数 long round(double a) double型数据a转换为long型(四舍五入) toDegrees(double angrad) 弧度—>角度 toRadians(double angdeg) 角度—>弧度

3、BigInteger类

3.1、概述

Integer类作为int的包装类,能存储的最大整型值为2147483647(2的31次方减1),Long类也是有限的,最大为9223372036854775807(2的63次方减1)。如果要表示再大的整数,不管是基本数据类型还是他们的包装类都无能为力,更不用说进行运算了。 java.math包的BigInteger可以表示不可变的任意精度的整数。BigInteger 提供所有 Java 的基本整数操作符的对应物,并提供 java.lang.Math 的所有相关方法。另外,BigInteger 还提供以下运算:模算术、GCD 计算、质数测试、素数生成、位操作以及一些其他操作。 构造器 BigInteger(String val):根据字符串构建BigInteger对象

3.2、常用方法

BigInteger abs() 返回大整数的绝对值 BigInteger add(BigInteger val) 返回两个大整数的和 BigInteger and(BigInteger val) 返回两个大整数的按位与的结果 BigInteger andNot(BigInteger val) 返回两个大整数与非的结果 BigInteger divide(BigInteger val) 返回两个大整数的商 double doubleValue() 返回大整数的double类型的值 float floatValue() 返回大整数的float类型的值 BigInteger gcd(BigInteger val) 返回大整数的最大公约数 int intValue() 返回大整数的整型值 long longValue() 返回大整数的long型值 BigInteger max(BigInteger val) 返回两个大整数的最大者 BigInteger min(BigInteger val) 返回两个大整数的最小者 BigInteger mod(BigInteger val) 用当前大整数对val求模 BigInteger multiply(BigInteger val) 返回两个大整数的积 BigInteger negate() 返回当前大整数的相反数 BigInteger not() 返回当前大整数的非 BigInteger or(BigInteger val) 返回两个大整数的按位或 BigInteger pow(int exponent) 返回当前大整数的exponent次方 BigInteger remainder(BigInteger val) 返回当前大整数除以val的余数 BigInteger leftShift(int n) 将当前大整数左移n位后返回 BigInteger rightShift(int n) 将当前大整数右移n位后返回 BigInteger subtract(BigInteger val)返回两个大整数相减的结果 byte[] toByteArray(BigInteger val)将大整数转换成二进制反码保存在byte数组中 String toString() 将当前大整数转换成十进制的字符串形式 BigInteger xor(BigInteger val) 返回两个大整数的异或

4、BigDecimal类

4.1、概述

Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数,但在实际应用中,可能需要对更大或者更小的数进行运算和处理。 一般情况下,对于那些不需要准确计算精度的数字,我们可以直接使用Float和Double处理,但是Double.valueOf(String) 和Float.valueOf(String)会丢失精度。所以开发中,如果我们需要精确计算的结果,则必须使用BigDecimal类来操作。 BigDecimal所创建的是对象,故我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。

4.2、常用构造函数

BigDecimal(int):创建一个具有参数所指定整数值的对象 BigDecimal(double):创建一个具有参数所指定双精度值的对象 BigDecimal(long):创建一个具有参数所指定长整数值的对象 BigDecimal(String):创建一个具有参数所指定以字符串表示的数值的对象

4.3、常用方法

add(BigDecimal):BigDecimal对象中的值相加,返回BigDecimal对象 subtract(BigDecimal):BigDecimal对象中的值相减,返回BigDecimal对象 multiply(BigDecimal):BigDecimal对象中的值相乘,返回BigDecimal对象 divide(BigDecimal):BigDecimal对象中的值相除,返回BigDecimal对象 toString():将BigDecimal对象中的值转换成字符串 doubleValue():将BigDecimal对象中的值转换成双精度数 floatValue():将BigDecimal对象中的值转换成单精度数 longValue():将BigDecimal对象中的值转换成长整数 intValue():将BigDecimal对象中的值转换成整数

【奔跑吧!JAVA】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/265241

(五)Java常用类之其他 | 【奔跑吧!JAVA】

Java

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:java解出图片中的文字
下一篇:Shell 流程控制
相关文章