Java常用API:Math、Syetem、Runtime、BigDecimal

news2024/10/6 6:40:32

Math类

在这里插入图片描述

//目标:了解下Nath类提供的常见方法。
// 1、public static int abs(int a):取绝对值(拿到的结果一定是正数)
//public static double abs(double a)
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 static double ceil(double a):向上取整
system.out.println(Math.ceil(4.0000001)); // 5.0
system.out.println(Math.ceil(4.0));//4.0
// 3、public static double floor(double a):向下取整
system.out.println(Math.floor(4.999999)); // 4.0
system.out.println(Math.floor(4.0)); // 4.0
//4、public static long round(double a):四舍五入
system.out.println(Math.round(3.4999)); // 3
system.out.println(Math.round(3.50001)); // 4
// 5、public static int max(int a, int b):取较大值
//public static int min(int a, int b):取较小值
system.out.println(Math.max(1020)); // 20
system.out.println(Math.min(10,20)); // 10
// 6、 public static double pow ( double a,double b):取次方
system.out.println(Math.pow(23));// 2的3次方  8.0
system.out.println(Math.pow(32)); // 3的2次方 9.0
// 7、public static double random():取随机数[0.0 , 1.0)〔包前不包后)
system.out.println(Math.random());

System

在这里插入图片描述

currentTimeMillis()是为了测试程序的性能

// 2、public static long currentTimeHillis():/l /获取当前系统的时间
//返回的是Long类型的时间毫秒值:指的是从1970-1-10:0:0开始走到此刻的总的毫秒值,1s = 1000ms
long time = system.currentTimeMillis();
system.out.println(time);
for (int i = 0; i < 1000000; i++) {
system.out.println("输出了: " + i);
}
long time2 = system.currentTimeMillis();
system.out.println((time2 - time) / 1000.0 + "s");//用time2-time是为了获取执行中间这个循环用了多少秒

Runtime

在这里插入图片描述

// 1、public static Runtime getRuntime()返回与当前Java应用程序关联的运行时对象。
Runtime r = Runtime.getRuntime();
// 2、pblic void exit(int status)终止当前运行的虚拟机,该参数用作状态代码;按照惯例,非零状态代码表示异常终止。
// r.exit(0);
// 3、public int availableProcessors():获取虚拟机能够使用的处理器数。
system.out.println(r.availableProcessors());
//4、public long totalMemory()返回Java虚拟机中的内存总量。
system.out.println(r.totalMemory()/1024.0/1024.0+"MB");//1024= 1K1024* 1024= 1M
// 5、public long freeMemory()返回Java虚拟机中的可用内存量
system.out.println(r.freeMemory()/1024.0/1024.0 +"MB" );
//6、public Process exec(String command)启动某个程序,并返回代表该程序的对象。
 r.exec("D : \ |soft\ \XMind \ \XIind.exe " );//这里是你想打开的应用程序的地址。 用Alt+回车可以把问题抛出去
Process p = r.exec( command: "QQ");//这个就是启动QQ这个应用程序,前提是QQ的地址在环境变量中
Thread.sleep( millis: 5000);//让程序在这里暂停5s后继续往下走!!
p.destroy(); //销毁!关闭程序!


BigDecimal

在这里插入图片描述
在这里插入图片描述

//目标:掌握BigDecimal的使用:解决小数运算失真的问题。
double a = 0.1;
double b = 0.2;
double c = a + b;
system.out.println(c);//此时会出现失真的现象 0.3000000001

//1、把他们变成字符串封装成BigDecimal对象来运算。
//BigDecimal a1 = new BigDecimal(Double.toString(a) ) ;
//BigDecimal b1 = new BigDecimal(Double.toString(b));
//推荐用以下方式:把小数转换成字符串再得到BigDecimal对象来使用(更简洁)
BigDecimal a1 = BigDecimal.valueOf(a);
BigDecimal b1 = BigDecimal.valueOf(b);
BigDecimal c1 = a1.add(b1); //加法
BigDecimal c1 = a1.subtract(b1);//减法
BigDecimal c1 = a1.multiply(b1);//乘法
BigDecimal c1 = a1.divide(b1);//除法
system.out.println(c1);
BigDecimal i = BigDecimal.valueOf(0.1);
BigDecimal j = BigDecimal.valueOf(0.3);
BigDecimal k = i.divide(j, 2RoundingMode.HALF_UP);//因为0.1/0.3除不尽 所以取小数点后两位
system.out.println(k);
//把BigDecimal对象转换成double类型的数据
double rs = k.doublevalue();
system.out.println(rs);

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/819994.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

upload-labs靶场全通关

upload-labs靶场全通关 pass-1pass-2pass-3pass-4pass-5pass-6pass-7pass-8pass-9pass-10pass-11pass-12pass-13pass-14pass-15pass-16pass-17pass-18pass-19pass-20 pass-1 首先我们新建一个php的webshell文件 在这里我写了一个rabb1t.php的shell文件 内容为这个样子 然后我…

【LeetCode经典算法】链表反转

题目 题目&#xff1a;给定单链表头节点&#xff0c;将单链表的链接顺序反转过来 例&#xff1a; 输入&#xff1a;1->2->3->4->5 输出&#xff1a;5->4->3->2->1 要求&#xff1a;按照两种方式实现 解决办法 方式一&#xff1a; 思路 单链表的结…

DH算法、DHE算法、ECDHE算法演进

ECDHE 算法解决了 RSA 算法不具备前向安全的性质 和 DH 算法效率低下的问题。 ECDHE 算法具有前向安全。所以被广泛使用。 由什么演变而来 DH 算法 -- > DHE 算法 -- > ECDHE 算法 DH 算法是非对称加密算法&#xff0c;该算法的核心数学思想是离散对数。 核心数学思…

wms-3代货架标签(电池版本)接口文档

一、查询标签信息接口 接口类型&#xff1a;POST, 参数格式&#xff1a;json array 链接形式&#xff1a; http://localhost/wms/associate/getTagsMsg 代码形式&#xff1a; { url : http://localhost/wms/associate/getTagsMsg, requestMethed : GET, requestParamet…

亚马逊买家账号ip关联怎么处理

对于亚马逊买家账号&#xff0c;同样需要注意IP关联问题。在亚马逊的眼中&#xff0c;如果多个买家账号共享相同的IP地址&#xff0c;可能会被视为潜在的操纵、违规或滥用行为。这种情况可能导致账号受到限制或处罚。 处理亚马逊买家账号IP关联问题&#xff0c;建议采取以下步骤…

有哪些很奇PA,但又比较少人知道的病毒?

世界上有哪些很奇PA&#xff08;或者说很搞笑&#xff09;&#xff0c;但又比较少人知道的病毒&#xff1f; ①温州皮鞋厂病毒 中毒迹象&#xff1a;播放出我们熟悉的《温州皮鞋厂倒闭了》bgm&#xff0c;并出现“捍卫版权&#xff0c;盗&#xff08;到&#xff09;此为止”…

DAY15_VUEElement综合案例

目录 1 VUE1.1 概述1.1.1 Vue js文件下载 1.2 快速入门1.3 Vue 指令1.3.1 v-bind & v-model 指令1.3.2 v-on 指令1.3.3 条件判断指令1.3.4 v-for 指令 1.4 生命周期1.5 案例1.5.1 需求1.5.2 查询所有功能1.5.3 添加功能 2 Element2.0 element-ui js和css和字体图标下载2.1 …

C++ 类和对象篇(二) this指针

目录 一、this指针概念 二、this指针的特性 三、this指针存在哪里&#xff1f; 四、this指针可以为空吗&#xff1f; 一、this指针概念 1.是什么&#xff1f; 它是类内非静态成员函数的隐含形参&#xff0c;this指针指向调用该函数的对象。 this指针是C编译器给每个“非静态…

适应于Linux系统的三种安装包格式 .tar.gz、.deb、rpm

deb、rpm、tar.gz三种Linux软件包的区别 rpm包-在红帽LINUX、SUSE、Fedora可以直接进行安装&#xff0c;但在Ubuntu中却无法识别&#xff1b; deb包-是Ubuntu的专利&#xff0c;在Ubuntu中双击deb包就可以进入自动安装进程&#xff1b; tar.gz包-在所有的Linux版本中都能使用…

【100天精通python】Day21:文件及目录操作_文件的权限处理和批量处理

目录 专栏导读 1. 文件的权限处理 1.1 查询文件权限 1.2 修改文件权限 2 文件的批量处理 2.1 使用os模块和os.listdir()函数 2.2 使用glob模块 2.3 使用shutil模块 2.3.1 批量复制文件 2.3.2 批量移动文件 2.3.3 批量删除文件 2.3.4 批量创建目录 专栏导读 专栏订阅…

Python程序开发案例教程PDF,python程序开发案例教程

大家好&#xff0c;本文将围绕Python程序开发案例教程黑马程序员电子版书展开说明&#xff0c;Python程序开发案例教程黑马课后答案是一个很多人都想弄明白的事情&#xff0c;想搞清楚Python程序开发案例教程pdf黑马程序员需要先了解以下几个事情。 1、python软件开发的案例有哪…

多赛道出海案例,亚马逊云科技为企业提供全新解决方案实现高速增长

数字化浪潮之下&#xff0c;中国企业的全球化步伐明显提速。从“借帆出海”到“生而全球化”&#xff0c;中国企业实现了从低端制造出口&#xff0c;向技术创新和品牌先导的升级。为助力中国企业业务高效出海&#xff0c;亚马逊云科技于2023年6月9日在深圳大中华喜来登酒店举办…

使用阿里云DataX完成数据同步

DataX DataX 是阿里云 DataWorks 数据集成的开源版本&#xff0c;在阿里巴巴集团内被广泛使用的离线数据同步工具/平台。DataX 实现了包括 MySQL、Oracle、OceanBase、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、Hologres、DRDS, datab…

Unity-缓存池

一、.基础缓存池实现 继承的Singleton脚本为 public class Singleton<T> where T : new() {private static T _instance;public static T GetIstance(){if (_instance null)_instance new T();return _instance;} } 1.PoolManager using System.Collections; using S…

mac安装nacos,M1芯片

第一步&#xff0c;官网下载 》nacos官网 去github中下载对应的版本&#xff0c;本人下载的是1.4.1版本 在这儿选择其他的版本&#xff0c;下面这里选择 tar.gz 压缩包 解压后放到一个非中文的目录下&#xff0c;我选择在 user目录下面创建一个other目录&#xff0c;将使用的环…

python-网络爬虫.Request

Request python中requests库使用方法详解&#xff1a; 一简介&#xff1a; Requests 是Python语言编写&#xff0c;基于urllib&#xff0c; 采用Apache2 Licensed开源协议的 HTTP 库。 与urllib相比&#xff0c;Requests更加方便&#xff0c;处理URL资源特别流畅。 可以节约我…

慕课网Go-4.package、单元测试、并发编程

package 1_1_User.go package usertype User struct {Name string }1_1_UserGet.go package userfunc GetCourse(c User) string {return c.Name }1_1_UserMain.go package mainimport ("fmt"Userch03 "goproj/IMOOC/ch03/user"//别名&#xff0c;防止同名…

HarmonyOS/OpenHarmony元服务开发-配置卡片的配置文件

卡片相关的配置文件主要包含FormExtensionAbility的配置和卡片的配置两部分&#xff1a; 1.卡片需要在module.json5配置文件中的extensionAbilities标签下&#xff0c;配置FormExtensionAbility相关信息。FormExtensionAbility需要填写metadata元信息标签&#xff0c;其中键名称…

论文解读|2020 CVPR:PointASNL:基于自适应采样的非局部神经网络点云鲁棒处理

原创 | 文 BFT机器人 01 背景 点云是由大量的点组成的三维数据集&#xff0c;通常由激光雷达或摄像机等传感器采集。点云数据处理是计算机视觉和机器学习领域的重要研究方向&#xff0c;应用广泛&#xff0c;例如自动驾驶、机器人导航、三维建模等。然而&#xff0c;点云数据通…

CCIA数安委等组织发起“个人信息保护影响评估专题工作”,合合信息首批入选试点

近期&#xff0c;“个人信息保护影响评估专题工作”&#xff08;简称“PIA专题工作”&#xff09;试点评估结果正式发布。PIA专题工作组由中国电子技术标准化研究院、中国信息通信院等单位的法律与技术专家组成&#xff0c;对试点申报单位开展PIA工作的过程是否符合评估依据提出…