Java铸基之路:运算符的深入学习!(上)

news2024/11/18 19:44:19

🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝

🥇博主昵称:小菜元

🍟博客主页:小菜元

🥗感谢点赞👍评论🃌

⚇很方便的在线编辑器:Lightly

让我们一起在写作中记录学习吧!

运算符的重要性

在Java的基础学习以及之后的进阶学习里,运算符都是必备的知识点,他不仅可以帮助我们进行复杂数值的计算,也可以帮助我们进行进行字符串的连接,是我们编程学习中必备的,所以我们一定要学好他!

算术运算符

在Java中常用的运算符有:+、-、*、/分别表示加减乘除的运算,当两个数都是整数参与除法运算(/)时,这就表示整数除法;否则,就是浮点除法。整数有时称为取模表示为(%),就像18/8=2,而18.0/8=2.25,从这计算中,我们很容易看到,这个运算方式显然与我们的刻板记忆不一样

PS:整数被0除将会产生一个异常,而浮点数被0除则会出现无穷大或者是NaN

数学函数和常量

Math类中包含了许多的数学函数,接下来我会给大家几个事例

Math.sqrt(x)        //平方根
Math.sin()        //三角函数
Math.cos()
Math.tan()
Math.atan()
Math.atan2()
Math.exp()    //指数函数以及对数函数和以10为底的对数函数
Math.log()
Math.log10()
Math.PI        //pai和e接近的常量
Math.E
Math.pow(x,a)    //x的a次幂

PS:在使用的时候没必要在前面都加上Math,只要在代码最前面加上此段代码即可

import static java.lang.Math.*

这个就是将Math类中的全部方法导入此文件,这样我们就可以使用这个类里面的全部文件了!

PS:在计算时要自主考虑这个类型的最大值,否则一旦超过Java将会得出错误的值

数值之间的类型转换

我们先给大家说明几个转换信息无丢失的和丢失的类型转换

无丢失:byte到short到int到long、char到int到double

有丢失:long到float、double,int到float

例如12345678的整数类型转换成浮点类型就会损失部分精度

在进行不同类型数值之间的计算时,我们需要将他们转换成相同的类型,否则他将遵循以下规则

两个数中有一个是double类型就会转换成double类型

其次是float以及long类型,否则就都转换成int类型

数据类型强转

数据类型的转换平常也很常见,例如将double类型的数据转换成int类型的数据,例如9.91转换成int类型,那么他就会截取整数部分9,而舍弃后面的小数,如果想要舍入就需要用到Math.round方法

double x = 9.91
int xx = (int)Math.round(x)

一般的数据类型转换如下

double x = 9.91
int xx = (int)x

括号里面的数值为需要转换成的类型,因为上述math方法返回的类型是long所以需要强转成int(在使用时,需要辨别类型的取值范围,当大范围转成小范围类型,就容易出现数据变形的情况,而当小范围数据类型转换成大范围数据类型就可以放心转换)

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

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

相关文章

【HarmonyOS NEXT开发】如何设置水平/垂直方向的左/居中/右对齐——RelativeContainer的AlignRules设置

文章目录 【HarmonyOS NEXT开发】如何设置水平/垂直方向的左/居中/右对齐——RelativeContainer的AlignRules设置RelativeContainer 和 AlignRules 的关系AlignRules 语法详解 【HarmonyOS NEXT开发】如何设置水平/垂直方向的左/居中/右对齐——RelativeContainer的AlignRules设…

RK3588九鼎创展方案在Arm集群服务器的项目中的应用分析​​

RK3588九鼎创展核心板,搭载8核瑞芯微3588芯片,具备高性能、低功耗以及强大的多媒体和AI处理能力。在Arm集群服务器项目中,RK3588系列芯片用有明显的性能优势。本文将结合RK3588芯片的性能特征以及九鼎创展的项目经验来分析RK3588在集群服务器…

编写XBOX控制器实现鼠标键盘输入

1.核心部分, XINPUT输入封装 XInput封装https://mp.csdn.net/mp_blog/creation/editor/1420701282.对话框窗口编写 Win32 对话框封装-CSDN博客https://blog.csdn.net/Flame_Cyclone/article/details/142110008?spm1001.2014.3001.5501 3.使用到的其他封装 字符串编码转换与…

惊人转变!从信息奴隶到思考大师,你只需掌握这几点专注力提升法!

引言 信息超载时代的今天,人们的主要问题不再是获取信息的资源渠道不足,任何一个信息,都可以通过一篇文章,一个视频来找到对应的相关信息,无极生太极、太极生两仪、两仪生四象。任何一个信息源中,都包含着…

设计模式-行为型模式-备忘录模式

1.备忘录模式定义 在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态; 1.1 备忘录模式的优缺点 优点 提供了一种状态恢复的实现机制,使得用户可以…

社区营销:如何通过聚集人群提升品牌

“没有人是孤岛”,约翰多恩这样写道。如果可以,请忽略他的性别偏见。他写这句话是在1624年(那时候真的不一样)。尽管如此,几个世纪后,他的话依然铿锵有力:很少有人能够在孤独中茁壮成长。我们是…

Maven从入门到精通(二)

一、什么是pom.xml pom.xml是Maven项目的核心配置文件,它是 项目对象模型 - Project Object Model(POM)的缩写。POM定义了项目的所有属性,包括项目的名称、版本、依赖关系、构建配置等。使用pom.xml,我们可以轻松地管…

栈实现基本计算器

leetcode题目链接 这题其实和逆波兰表达式很像,无非多了个(和) 我们可以定义三个变量。 result表示当前计算结果 sign表示是还是- number表示当前数字 遍历字符串 利用isDigit 方法 提出数字 如果遇到加号resultsign*number 减号则将…

codeup:将已有文件夹推送到已有仓库

codeup:将已有文件夹推送到已有仓库 总流程git initgit remote add origin https://codeup.aliyun.com/xxx/xxx.gitgit add .git commit (会遇到很多问题)git push -u origin master (会遇到很多问题)成功在仓库中添加…

Unity 摄像机(Camera)详解

文章目录 0.前言1.相机属性介绍2.Unity 中多个相机画面堆叠显示2.1 3D 摄像机2.2 UI 摄像机2.3 摄像机的Culling Mask设置 0.前言 本文介绍的是使用Unity默认的内置渲染管线下的Camera组件,使用URP或HDRP则不同。 1.相机属性介绍 Clear Flags: 清除标记…

Java 创建对象内存分析

通过创建一个Pet类,以及new了两个Pet类的对象dog和cat来说明: 内存概念图:

揭秘!洞察用户心声的神秘策略,如何悄然引领业务爆炸式增长!

引言 在互联网和数字化技术的推动下,用户行为和消费模式发生了深刻变化。用户不再仅仅满足于产品的基本功能,而是更加关注个性化体验、情感连接和价值认同。因此,企业要想在激烈的市场竞争中脱颖而出,必须深入理解用户需求&#…

【解决方案】双系统中修复ubuntu引导

双系统中修复ubuntu引导 一、grub命令行进入ubuntu二、grub命令行进入windows三、可以进入windows的情况四、可以进入ubuntu的情况五、使用EasyUEFI软件编辑引导 windows安装ubuntu系统之后,无法进入系统选择界面,会出现以下几种情况。 一、grub命令行进…

【重学 MySQL】二十八、SQL99语法新特性之自然连接和 using 连接

【重学 MySQL】二十八、SQL99语法新特性之自然连接和 using 连接 自然连接(NATURAL JOIN)USING连接总结 SQL99语法在SQL92的基础上引入了一些新特性,其中自然连接(NATURAL JOIN)和USING连接是较为显著的两个特性。 自…

027.爬虫专用浏览器-绕过常见无头检测(二)

一、无头检测简介: 无头检测(Headless Detection)就是检测用户是否在无头浏览器。只要检测到,那百分百是爬虫。无头检测我们多数使用这个站:https://bot.sannysoft.com/之前写过一篇文章:插眼传送,绕过了部分检测&…

C盘空间不足如何解决?解决C盘空间不足的7个方法

当计算机的C盘(通常作为系统盘)空间不足时,会严重影响系统的运行效率和稳定性。针对这一问题,以下7个解决方案,可以帮助我们有效释放C盘空间,提升系统性能。 1.磁盘清理 利用Windows内置的磁盘清理工具…

【IPV6从入门到起飞】5-3 IPV6+Home Assistant(ESP32+MQTT+GPIO)远程控制灯

IPV6Home Assistant[ESP32MQTTGPIO]远程控制灯 1 背景2 Home Assistant 配置3 ESP32 配置3-1 工程代码3-2 硬件接线 4 实现效果 1 背景 在上一小节我们通过ESP32接入了Home Assistant,实现了温度、湿度、光照强度的数据采集,但智能家居更多的是实现控制…

IDEA 修改 ${USER} 配置

背景 安装了阿里巴巴代码规范插件,需要使用自动添加作者信息的功能 但是添加的是个人昵称,并非公司要求的工号等信息,于是需要做出修改 修改方案 历经一番波折后,终于发现其原理,是因为 插件添加作者信息&#xff0…

Version ‘18.19.0‘ not found - try `nvm ls-remote` to browse available versions.

nvm安装指定版本不好使了 使用 nvm install 18.19.0 一直报错 Version 18.19.0 not found - try nvm ls-remote to browse available versions.然而使用 nvm ls-remote 只看到 iojs-v1.0.0iojs-v1.0.1iojs-v1.0.2iojs-v1.0.3iojs-v1.0.4iojs-v1.1.0iojs-v1.2.0iojs-v1.3.0iojs…