Java基础入门篇——Java Number Math 类

news2025/2/8 2:52:25

当我们在Java中处理数字和执行数学计算时,可以使用Java的Number和Math类。这两个类提供了一系列方法和常量,用于处理和操作数字数据。

1、Number类:  

Number是一个抽象类,是Java中所有数字类的父类,包括ByteShortIntegerLongFloatDouble等。Number类提供了将数字转换为特定类型(如int或double)的方法,以及用于执行基本数学操作的方法。 

常用的Number类方法包括: 

  • byteValue():将Number对象转换为byte类型。
  • shortValue():将Number对象转换为short类型。
  • intValue():将Number对象转换为int类型。
  • longValue():将Number对象转换为long类型。
  • floatValue():将Number对象转换为float类型。
  • doubleValue():将Number对象转换为double类型。

 Number类的方法进行类型转换:

Number num = 10.5;
int x = num.intValue();
double y = num.doubleValue();

System.out.println("x = " + x);
System.out.println("y = " + y); 

以上实例编译运行结果如下: 

x = 10
y = 10.5

在代码中,我们将一个浮点数值10.5赋给了一个Number类型的变量num。接着,我们使用num.intValue()将num转换为int类型的变量x,使用num.doubleValue()将num转换为double类型的变量y。

输出结果中的x是int类型的变量x的值,输出为10。而y是double类型的变量y的值,输出为10.5。

2、Math类:

 Math是一个包含数学相关方法(如绝对值、平方根、三角函数、对数函数等)和常量的类。它是一个工具类,提供了用于执行常见数学计算的静态方法。 

常用的Math类方法包括: 

  • abs():返回一个数的绝对值。
  • sqrt():返回一个数的平方根。
  • pow():返回一个数的指定次幂。
  • round():将一个浮点数取最接近的整数。
  • sin()cos()tan():分别返回一个角度的正弦、余弦和正切值。
  • log()log10():分别返回一个数的自然对数和以10为底的对数。

Math类的方法进行数学计算:

int x = 5;
double y = 3.7;

int absX = Math.abs(x);
double sqrtY = Math.sqrt(y);
double power = Math.pow(x, 2);
double roundY = Math.round(y);

System.out.println("absX = " + absX);       
System.out.println("sqrtY = " + sqrtY);    
System.out.println("power = " + power);    
System.out.println("roundY = " + roundY);   

以上实例编译运行结果如下: 

absX = 5
sqrtY = 1.9235384061671346
power = 25.0
roundY = 4.0

在代码中,我们定义了一个整数变量x和一个浮点数变量y,并使用Math类的一些方法进行数学计算。

  • Math.abs(x)返回x的绝对值,因为x是正数5,所以absX的值为5。
  • Math.sqrt(y)返回y的平方根,因为y是3.7,所以sqrtY的值约为1.9235384061671346。
  • Math.pow(x, 2)计算x的2次幂,即5的平方,所以power的值为25.0。
  • Math.round(y)将y四舍五入为最接近的整数,因为y是3.7,所以roundY的值为4.0。

 

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

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

相关文章

设计模式(6)原型模式

一、介绍 Java中自带的原型模式是clone()方法。该方法是Object的方法,native类型。他的作用就是将对象的在内存的那一块内存数据一字不差地再复制一个。我们写简单类的时候只需要实现Cloneable接口,然后调用Object::clone方法就可实现克隆功能。这样实现…

1.物联网IWIP网络

一。以太网 1.nc模拟UDP (1)COMMBOX通信调试工具 (2) 控制台输入nc -u 127.0.0.1 8000,此时串口也可以获得数据 (3)串口调试程序发送字符串,电脑控制台也会展示同样字符串(说明UDP…

java文件

一.File类 二.扫描指定目录,并找到名称中包含指定字符的所有普通文件(不包含目录),并且后续询问用户是否要删除该文件 我的代码: import java.io.File; import java.io.IOException; import java.util.Scanner;public class Tes…

对于msvcr120.dll丢失的问题,分享几种解决方法

msvcr120.dll的作用是提供一系列的运行时函数和功能,以便应用程序能够正常运行。这些函数和功能包括内存管理、异常处理、输入输出操作、数学运算等。在没有这个库文件的情况下,应用程序可能无法正常启动或执行特定的功能,甚至会出现错误提示…

Spring MVC【一篇搞定】

Spring MVC 文章目录 Spring MVC一、什么是 Spring MVC二、介绍MVC2.1、Spring MVC 和 MVC 之间的关系 三、创建 Spring MVC四、掌握 Spring MVC 的核心 ☆☆☆☆4.1、Spring 热部署4.2、实现用户与程序的连接 ☆4.2.1、RequestMapping4.2.2、GetMapping/PostMapping 4.3、获取…

《Zookeeper》源码分析(七)之 NIOServerCnxn的工作原理

目录 NIOServerCnxnreadPayload()handleWrite(k)process() NIOServerCnxn 在上一节IOWorkRequest的doWork()方法中提到会将IO就绪的key通过handleIO()方法提交给NIOServerCnxn处理,一个NIOServerCnxn代表客户端与服务端的一个连接,它用于处理两者之间的…

JavaScript 中 let 和 var 的区别

首先,let 和 var 都是用于声明变量的关键字,在老版 JavaScript 中也许你会见到 var 方式来声明变量,而现如今几乎都是使用 let 进行声明,接下来看看这两个关键字之间的区别。 1、作用域 var var 声明的变量在函数内部有效&#x…

【什么是应变波齿轮又名谐波驱动?机器人应用的完美齿轮组!?】

什么是应变波齿轮又名谐波驱动?机器人应用的完美齿轮组!? 1. 什么是应变波齿轮?2. 工作原理3. 应变波齿轮 – 谐波驱动 3D 模型4. 3D 打印应变波齿轮 – 谐波驱动5. 总结 在本教程中,我们将学习什么是应变波齿轮&#…

关于使用 heatmap.js创建热力图并应用在cesuim上的坐标定位问题

废话少说&#xff0c;heatmap.js的用法我不在赘述&#xff0c;此文主要解决其热力点坐标定位在cesuim上的问题。 热力图容器 我们知道&#xff0c;热力图需要用有一个容器节点来存放它生成的图片&#xff1a;<div class"div-heatMap"></div> 而其中容器…

【ElasticSearch入门】

目录 1.ElasticSearch的简介 2.用数据库实现搜素的功能 3.ES的核心概念 3.1 NRT(Near Realtime)近实时 3.2 cluster集群&#xff0c;ES是一个分布式的系统 3.3 Node节点&#xff0c;就是集群中的一台服务器 3.4 index 索引&#xff08;索引库&#xff09; 3.5 type类型 3.6 doc…

360安全卫士右下角广告弹窗太多怎么彻底关闭?

360安全卫士右下角广告弹窗太多怎么彻底关闭&#xff1f; 1、卸载360安全卫士&#xff0c;选择继续卸载&#xff0c;并点击下一步&#xff1b; 2、选择广告弹窗太多&#xff0c;并点击下一步&#xff1b; 3、然后被告知升级极速版永久去广告&#xff0c;可以点击一键去广告。 …

全网超全,接口自动化测试-动态数据生成/替换数据(实战应用)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 接口自动化过程中…

拂袖一挥,zipfile秒列zip包内容

使用wxpython列出文件夹中的zip文件及内容 最近在做一个文件管理的小工具,需要列出选择的文件夹下的所有zip压缩文件,并在点击某个zip文件时能够显示其中的内容。为此我使用了wxpython来实现这个功能。 1. 导入需要的模块 首先导入程序需要的模块: import wx import os imp…

【C++面向对象】--- 继承 的奥秘(上篇)

个人主页&#xff1a;平行线也会相交&#x1f4aa; 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 平行线也会相交 原创 收录于专栏【C之路】&#x1f48c; 本专栏旨在记录C的学习路线&#xff0c;望对大家有所帮助&#x1f647;‍ 希望我们一起努力、成长&…

git强推覆盖其他项目分支

git强推分支&#xff0c;覆盖其他分支&#xff1b; 操作&#xff1a; 下载branch-1.3代码&#xff1b; $ git clone gitlabgitlab.zte.net:zte-dba-service/branch.git $ git remote add origin2 gitlabgitlab.zte.net:zte-service/branch.git $ git push origin2 master -f注…

UE 5 GAS 在项目中处理AttributeSet相关

这一篇文章是个人的实战经验记录&#xff0c;如果对基础性的内容不了解的&#xff0c;可以看我前面一篇文章对基础的概念以及内容的讲解。 设置AttributeSet 使用GAS之前&#xff0c;首先需要设置参数集AS&#xff0c;这个是用于同步的一些参数&#xff0c;至于如何设置GAS&a…

腾讯云Linux服务器创建、使用和配置的教程

腾讯云Linux服务器创建&#xff0c;先注册腾讯云账号&#xff0c;购买云服务器配置然后选择Linux镜像操作系统&#xff0c;包括云服务器地域、CVM实例、公网IP等配置&#xff0c;然后远程链接到腾讯云服务器快速配置使用教程&#xff1a; 目录 腾讯云Linux服务器创建 创建Li…

远程控制医疗行业应用解析:如何满足医院合规需求?

远程控制医疗行业应用解析&#xff1a;如何满足医院合规需求&#xff1f; 作为一个起源于IT行业的技术&#xff0c;以远程桌面为基础的远程控制技术目前在医疗领域也已经有了比较广阔的应用前景&#xff0c;尤其是在医疗数字化系统/设备的远程运维场景&#xff0c;已经有了一些…

Spring Profile与PropertyPlaceholderConfigurer实现项目多环境配置切换

最近考虑项目在不同环境下配置的切换&#xff0c;使用profile注解搭配PropertyPlaceholderConfigurer实现对配置文件的切换&#xff0c;简单写了个demo记录下实现。 基本知识介绍 Profile Profile通过对bean进行修饰&#xff0c;来限定spring在bean管理时的初始化情况&#…

K8S调度

K8S调度 一、List-Watch 机制 controller-manager、scheduler、kubelet 通过 List-Watch 机制监听 apiserver 发出的事件&#xff0c;apiserver 通过 List-Watch 机制监听 etcd 发出的事件1.scheduler 的调度策略 预选策略/预算策略&#xff1a;通过调度算法过滤掉不满足条件…