java中的运算,+-* /% | ^ &
java中运算都是操作符号,那么整形默认为int,双精度默认为都double
整数
看案例:
无法编译通过:操作默认为int,接受结果为int,所以这个地方编译无法通过,所以需要强制类型转换
再看案例:
再看双精度:
这种是可以的,再看
这也是可以的,看结果:
精度损失。再看
结果:
再看多种案例:
看结果:
再看案例 :
看结果
那么会什么会出现这么多问题呢,原因
在数据结果,转为二进制的时候,比如0.3 转换为二进制如这么转换的
0.3*2->0.6->0.6*2>1.2 二进制为1
将小数点后面的0.2继续进行
0.2*2》0.4>0.8>1.6>二进制为1
再进行
0.6*2》1.2 二进制1 再进行
0.2 *2》0.4》0.8》1.6 如此循环下去,导致最后会进行精度损失,
所以如果项目中要有这样的,所以需要进行采用dicmal类型来操作精度。避免精度损失
| ^ & 运算解析:
看案例:
看结果:
这是为什么呢。
分析
第一个为或运算,第二个为与运算,第三个为亦或预算
3转化为二进制的 0000 0011
1转为二进制 0000 0001
或,只要其中一个为正确那么就正确,在进行运算的时候,只要其中一个为1,那么就为1
所以 1|3 结果为0000 0011 即结果为3
与 只要两个都正确,那么正确,在运算中只要两个相同就为1,另外为0
1&3 结果为0000 0001 所以结果为1
亦或 只要两个不同才正确,所以计算时候,只有两个不同才为1,另外为0
1^3 结果0000 0010 所以结果为2
位运算
看案例:
一个是左移,一个是右移
1 二进制 0000 0001 向右移 3位 所以 0000 0000 所以结果为0
左移 0000 1000 所以为 8
再看案例:
9的二进制为 0000 1001
左移移动 0100 1000 结果为2e6+2e3=64+8=72 计算规则是这样的,首先最后一个为2的0次方,那么第七位就为2的6次方,第四位就为2的3方法
右移 0000 0001 所以结果为1
随机推荐
- 双系统开机引导菜单修复方法 进win7无须重启|metro引导|双系统菜单名字修改
此文转自互联网,一部分是原创. 主要内容 1.修复双系统菜单(win7与win8双系统),进入win7不再需要重启,普通菜单样式(普通引导,非metro界面),更加简洁,实用,开机即可选择操作系统 2 ...
- Prism - MVVM模式下,StackPanel中增加和删除View(UserControl)
一.现实效果 在学习Prim,看官方的例子 03-CustomRegions 只是一个简单演示,这里用MVVM方式做个了相对完整的例子,实现效果如图: 点击Add,右侧StackPanel中增加一个V ...
- JS旋转和css旋转
js旋转 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <styl ...
- Java自动化测试框架-06 - 来给你的测试报告化个妆整个形 - (下)(详细教程)
简介 经过上一次的化妆和整形,有客户提出需求能不能将那个普通会员的套餐再升级一下,再漂亮一点.所以这次咱们就来看看从哪里下刀可以使它变得再漂亮一点点. 上一篇文章修改了一些基本的ReportNG信息, ...
- [Next] Next.js+Nest.js实现GitHub第三方登录
GitHub OAuth 第三方登录 第三方登录的关键知识点就是 OAuth2.0 . 第三方登录,实质就是 OAuth 授权 . OAuth 是一个开放标准,允许用户让第三方应用访问某一个网站的资源 ...
- presto-mysql/elasticsearch6.0.0安装部署测试,异种数据源关联查询入门实践
本文简单记录一次实践使用过程,涉及presto-mysql,presto-elasticsearch,文中参数未做注释,请参考官方文档,希望能帮到大家 1 下载安装 presto-0.228 < ...
- SpringCloud番外篇-服务治理之Nacos
一.Nacos概述 Nacos是阿里巴巴开源的服务注册中心,官方文档:https://nacos.io/zh-cn/docs/what-is-nacos.html 从个人使用体验上看,nacos要比e ...
- MyBatis的几个重要概念和工作流程
MyBatis 几个重要的概念 Mapper 配置: Mapper 配置可以使用基于 XML 的 Mapper 配置文件来实现,也可以使用基于 Java 注解的 MyBatis 注解来实现,甚至可以直 ...
- PhpStudy2018后门漏洞预警及漏洞复现&检测和执行POC脚本
PhpStudy2018后门漏洞预警及漏洞复现&检测和执行POC脚本 phpstudy介绍 Phpstudy是国内的一款免费的PHP调试环境的程序集成包,其通过集成Apache.PHP.MyS ...
- [考试反思]0914csp-s模拟测试43:破绽
T1会正解.爆int了,代码里一大堆long long但是有一个地方落了.-70分. 离考试结束还有19秒的时候发现手模样例爆负数了,没来得及改. T2没想.打暴力了.然而实际很好想...早读5分钟就 ...