JavaSE——常用API进阶二(1/8)-Math、System、Runtime(它们提供的常见方法以及具体使用)

简介: JavaSE——常用API进阶二(1/8)-Math、System、Runtime(它们提供的常见方法以及具体使用)

Math

  • 代表数学,是一个工具类,里面提供的都是对数据进行操作的一些静态方法。

Math类提供的常见方法 图片.png

具体用法

1.取绝对值

public class Test {
    public static void main(String[] args) {
        System.out.println(Math.abs(-12));  //12
        System.out.println(Math.abs(123));  //123
        System.out.println(Math.abs(-3.14));  //3.14
    }
}


2.向上取整&向下取整

public class Test {
    public static void main(String[] args) {
        //向上取整
        System.out.println(Math.ceil(4.00001));  //5.0
        System.out.println(Math.ceil(4.0));  //4.0
        
        //向下取整
        System.out.println(Math.floor(4.99999));  //4.0
        System.out.println(Math.floor(4.0));  //4.0
 
    }
}


3.四舍五入

public class Test {
    public static void main(String[] args) {
        System.out.println(Math.round(3.4999));  //3
        System.out.println(Math.round(3.50001));  //4
    }
}


4.取较大值&取较小值

public class Test {
    public static void main(String[] args) {
        System.out.println(Math.max(10, 20));  //20
        System.out.println(Math.min(10, 20));  //10
    }
}


5.取次方&取随机数

public class Test {
    public static void main(String[] args) {
        //取次方
        System.out.println(Math.pow(2, 3));  //2的3次方  8.0
        System.out.println(Math.pow(3, 2));  //3的2次方  9.0
 
        //取随机数
        System.out.println(Math.random()); //取[ 0.0, 1.0 )    (包前不包后)
    }
}


Ctrl + 鼠标左键查看random的源码:



System

  • System代表程序所在的系统,也是一个工具类。

System类提供的常见方法

方法名 说明
public static void exit(int status) 终止当前运行的Java虚拟机。
publicstaticlong currentTimeMillis() 返回当前系统的时间毫秒值形式

具体用法


public class Test {
    public static void main(String[] args) {
 
        //1.终止当前运行的Java虚拟机
        //System.exit(0); //人为地终止虚拟机(不要运行使用)
 
        //2.获取当前系统的时间
        long time = System.currentTimeMillis();
        System.out.println(time);  //是以毫秒为单位输出出来的
    }
 
}

运行结果:

一般可用于判断一段程序的执行时间或者简单评估其性能:

public class Test {
    public static void main(String[] args) {
 
        long time1 = System.currentTimeMillis();
        int a = 0;
        for (int i = 0; i < 10000000; i++) {
            a += a;
        }
        long time2 = System.currentTimeMillis();
        System.out.println("执行时间:" + (time2 - time1) / 1000.0 + "s"); //换算成秒的单位
    }
 
}


时间毫秒值

  • 指的是从1970年1月1日00:00:00走到此刻的总的毫秒数,应该是很大的。1s=1000ms。

为什么选择“1970年1月1日00:00:00”作为时间的起点?

 1969年8月,贝尔实验室的程序员肯汤普逊利用妻儿离开一个月的机会,开始着手创造一个全新的革命性的操作系统,他使用B编译语言在老旧的PDP-7机器上开发出了Unix的一个版本。随后,汤普逊和同事丹尼斯里奇改进了B语言,开发出了C语言,重写了UNIX。


1970年1月1日算C语言的生日

Runtime

  • 代表程序所在的运行环境。
  • Runtime是一个单例类

Runtime类提供的常见方法 图片.png

具体用法

1.返回与当前Java应用程序关联的运行时对象

public class Test {
    public static void main(String[] args) {
        //1.返回与当前Java应用程序关联的运行时对象
        Runtime r = Runtime.getRuntime();
        System.out.println(r.toString());
    }
}


2.终止当前运行的虚拟机

3.获取虚拟机能够使用的处理器数。

4.返回Java虚拟机中的内存总量。

5.返回Java虚拟机中的可用内存量

public class Test {
    public static void main(String[] args) {
        //1.返回与当前Java应用程序关联的运行时对象
        Runtime r = Runtime.getRuntime();
 
        //2.终止当前运行的虚拟机,该参数用作状态代码;按照惯例,非零状态代码表示异常终止。
        //r.exit(0);   同样不能运行它
 
        //3、获取虚拟机能够使用的处理器数。
        System.out.println("3.虚拟机能够使用的处理器数:" + r.availableProcessors());
 
        //4.返回Java虚拟机中的内存总量
        System.out.println("4.Java虚拟机中的内存总量:" + r.totalMemory()/1024.0/1024.0 + " MB"); //转换成MB
 
        //5.返回Java虚拟机中的可用内存量
        System.out.println("5.Java虚拟机中的可用内存量" + r.freeMemory()/1024.0/1024.0 + " MB");
    }
 
}

运行结果:


6.启动某个程序,并返回代表该程序的对象。


public class Test {
    public static void main(String[] args) {
        Runtime r = Runtime.getRuntime();
 
        //6.启动某个程序,并返回代表该程序的对象。
        r.exec("F:\\Minecraft\\Minecraft\\HMCL-3.5.5.exe");
        
        //如果配置了环境变量,那么就可以直接使用
        Process p = r.exec("QQ");
        Thread.sleep(5000); //让程序在这里暂停5s后再继续
        p.destroy(); //销毁,关闭程序
    }
}

END



目录
相关文章
|
3月前
|
自然语言处理 算法 Java
地址描述转换为坐标点不使用API,有什么转换的方法?
地址描述转换为坐标点不使用API,有什么转换的方法?
289 64
|
2月前
|
测试技术 API 项目管理
API测试方法
【10月更文挑战第18天】API测试方法
48 1
|
5月前
|
安全 API
通义千问API获取方法
访问阿里云DashScope官网以获取API-KEY。首先需开通DashScope服务:登录控制台,点击“去开通”,阅读协议后点击“立即开通”。接着获取API-KEY:进入API-KEY管理页面,点击“创建新的API-KEY”,复制并安全保存生成的API-KEY。完成这些步骤后,即可使用API-KEY调用DashScope API。更多详情见[官方文档](https://help.aliyun.com/zh/dashscope/developer-reference/acquisition-and-configuration-of-api-key)。
|
2月前
|
Java 大数据 API
别死脑筋,赶紧学起来!Java之Steam() API 常用方法使用,让开发简单起来!
分享Java Stream API的常用方法,让开发更简单。涵盖filter、map、sorted等操作,提高代码效率与可读性。关注公众号,了解更多技术内容。
|
2月前
|
JavaScript 前端开发 Java
多种语言请求API接口方法
每种语言和库的选择取决于具体需求、项目环境以及个人偏好。了解这些基本方法,开发者就可以根据项目需求选择合适的语言和库来高效地与API交互。
39 1
|
2月前
|
安全 测试技术 API
一图看懂API测试9种方法
一图看懂API测试九种方法:冒烟测试验证基本功能,功能测试确保符合规格,集成测试检查组件协同工作,回归测试防止新变更引入问题,负载测试评估性能稳定性,压力测试挑战极限负载,安全测试发现并修复漏洞,用户界面测试确保UI与API协调,模糊测试提升异常数据处理鲁棒性。
|
4月前
|
安全 Java API
|
4月前
|
存储 算法 Oracle
19 Java8概述(Java8概述+lambda表达式+函数式接口+方法引用+Stream+新时间API)
19 Java8概述(Java8概述+lambda表达式+函数式接口+方法引用+Stream+新时间API)
70 8
|
4月前
|
IDE 测试技术 API
使用京东API接口适用于的环境及验证调用合法性的方法
在电商领域,京东API接口支持商品信息查询、订单处理等功能。开发者需确保在稳定服务器端环境使用,选择合适编程语言及框架,并具备足够网络带宽处理能力。开发环境应配备IDE或代码编辑器及所需库。测试环境需充分验证API稳定性与可靠性。合法性验证包括:正确使用App Key和App Secret进行鉴权;掌握签名规则并在请求中添加签名;遵守请求频率限制;理解并遵循数据使用协议。遵循这些指导原则可保证API调用的合法性和稳定性。
|
4月前
|
UED 开发工具 iOS开发
Uno Platform大揭秘:如何在你的跨平台应用中,巧妙融入第三方库与服务,一键解锁无限可能,让应用功能飙升,用户体验爆棚!
【8月更文挑战第31天】Uno Platform 让开发者能用同一代码库打造 Windows、iOS、Android、macOS 甚至 Web 的多彩应用。本文介绍如何在 Uno Platform 中集成第三方库和服务,如 Mapbox 或 Google Maps 的 .NET SDK,以增强应用功能并提升用户体验。通过 NuGet 安装所需库,并在 XAML 页面中添加相应控件,即可实现地图等功能。尽管 Uno 平台减少了平台差异,但仍需关注版本兼容性和性能问题,确保应用在多平台上表现一致。掌握正确方法,让跨平台应用更出色。
56 0

相关课程

更多