java运算符1
一:算术运算符(+, -, *, /, ++, --, )
1、+号 :可以做加法运算(加号两边为字符和数字)、正数表示
字符串连接符:只要+号两边其中有一边有字符串,输出时加号就充当连接符 例: System.out.println(“hello”+’a’+1); 输出 helloa1 (从左到右)
System.out.println(‘a’+1+”hello”); 输出 98hello (a的ASCII码值为97)
2、/和%:/取整,想要得到小数可以*1.0。
%取余。
3、++和--:在变量的前面表示先运算在赋值,在变量的后面表示先赋值在运算。(例:a = 4;b = (a++)+(++a)+(a*10) ; a=6,b=70)
二:赋值运算符(= , +=, -=, *=, /=, %=)
1、 short s=1; short s=1;
s = s+1; s+=1;
上面两个代码有没有问题,如果有,那里有问题?(为什么 s = s+1不等同于s+=1)
答:第一个有问题,因为变量参与运算,首先会提升数据类型,然后做运算。所以 s = s+1;s会提升到int类型然后再做加法运算,最终的结果是int类型,所以拿short类型接收会报错,所以要想成功赋值,就得强制类型转换。
第二个代码没有问题,是因为内部自动包含了强制类型转换,s+=1 ===> s = (s的数据类型)(s+1)
三:关系运算符(== , !=, >, <, >=, <=)
1、概述:关系运算符表示一个判断,判断的结果是boolean类型,true和false。所以在赋值时只能用boolean来定义( boolean flag = (a == b);如果a等于b则flag为true,反之则为false)
四:逻辑运算符
1、概述:逻辑运算符的两边放的是boolean类型的值,计算的结果也是一个boolean类型的值。
2、若执行((a++ == 3) 逻辑运算符(b++ == 4))
&(与): 两边有false,则false,两边都做运算
| (或): 两边有true,则true,两边都做运算
^(异或): 两边相同为false,不同为true,两边都做运算
&&(短路与): 两边有false,则false,当&&左边的表达式结果为false的时候,结果肯定为false,右边不执行b++。
|| (短路或): 两边有true,则true,当||左边是true的时候,结果肯定是true,右边不执行。
3、!(a == b) !表示非的意思,a等于b则结果为false。
五、位运算符(<<, >>, >>>, &, |, ^, ~)
1、&,|,^ 求 3 位运算符 4 ?
由于数据在计算机中参与运算的都是补码,先求出两边的补码,在根据补码进行位运算,在吧补码转换成原码。
3的二进制:00000011
4的二进制:00000100
又由于3和4都是正数
3的补码:00000011
4的补码:00000100
2、~(非):将1变成0,0变成1
4的补码是00000011
~4补码是11111100 其原码为10000100 ,所以结果为 —4。
java运算符1的更多相关文章
- Java笔记2-数据类型,变量,Java运算符
我们编写软件,目的是为了高效的操作(增,删,改,查)数据. 数据类型 1.基本类型(8种)byte 字节型 -128~127short 短整型 -32768~32767int 整型 -21474836 ...
- Java运算符优先级(转)
转自:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 ...
- 【转】Java运算符优先级
原文网址:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 ...
- java运算符优先级与流程控制
1. Java 的方法Method (函数 Function), 功能, 动作 1) 方法就是函数: y=f(x)=3x+6; 2) 方法的语法 (修饰词)(返回值类型)(方法名)(参数列表){ ...
- Java基本语法-----java运算符的优先级与结合性
这是本人以前的上学期间java 运算符这块知识的总结的,截图存到了word里,大家将就看下吧(不会用Markdown的表格 不然就在写一遍了 T T). [正在看本人博客的这位童鞋,我看你气度不凡,谈 ...
- Java 基本语法---Java运算符
Java 基本语法---Java运算符 0. 概述 Java中的运算符主要分为以下几种: 算术运算符 赋值运算符 关系运算符 逻辑运算符 条件运算符 位运算符 其他运算符 1. 算术运算符 操作符 描 ...
- [转]Java 运算符的优先级
Java 运算符的优先级(从高到低) 优先级 描述 运算符 1 括号 ().[] 2 正负号 +.- 3 自增自减,非 ++.--.! 4 乘除,取余 *./.% 5 加减 +.- 6 移位运算 &l ...
- Java运算符使用总结(重点:自增自减、位运算和逻辑运算)
Java运算符共包括这几种:算术运算符.比较运算符.位运算符.逻辑运算符.赋值运算符和其他运算符.(该图来自网络) 简单的运算符,就不过多介绍使用了,可自行测试.关于赋值运算,可以结合算术运算和位运算 ...
- Java 运算符及优先级
运算符 分割符: , ; [] () 算数运算符: + - * / % ++ -- 关系运算符: > < >= <= == != 逻辑运算符: ! & | ^ & ...
- 【java基础】Java运算符优先级
Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目 ( ) 圆括号 从左到右 [ ] 方括号 从左到右 2 + 正号 从右到左 单目 - 负号 ...
随机推荐
- spring-boot aop 增删改操作日志 实现
1.注解接口:import com.github.wxiaoqi.security.common.constant.Constants; import java.lang.annotation.*; ...
- JDBCUtils工具类的属性
package cn.itcast.util;import java.io.FileReader;import java.io.IOException;import java.net.URL;impo ...
- Linux系统的文件复制移动删除与VIM编辑
目录 今日内容概要 内容详细 复制文件 移动文件 删除文件 系统别名(针对 rm 改别名) vim编辑器 今日内容概要 复制文件 移动文件 删除文件 vim编辑器 内容详细 复制文件 # 命令: cp ...
- 【阿菜漏洞复现】DeFi 平台 MonoX Finance 漏洞分析及复现
前言 2021 年 11 ⽉ 30 ⽇,DeFi 平台 MonoX Finance 遭遇攻击,损失共计约 3100 万美元. 造成本次攻击的漏洞主要有两个: 移除流动性的函数未对调用者进行检测,使得任 ...
- Springboot 入门及Demo
一:SpringBoot入门1.1:SpringBoot简介Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的 ...
- C#文件操作(IO流 摘抄)
11 文件操作概述 11.1 驱动器 在Windows操作系统中,存储介质统称为驱动器,硬盘由于可以划分为多个区域,每一个区域称为一个驱动器..NET Framework提供DriveInfo类和 D ...
- Jenkins插件维护
目录 一.简介 二.插件安装 在线安装插件 上传安装插件 从其它jenkins复制插件 配置插件加速器 一.简介 除了在线安装,还可以官网插件下载地址中进行下载安装,如果访问缓慢可以用清华镜像站. 二 ...
- AT2664 [AGC017A] Biscuits 题解
Content 有一个长度为 \(n\) 的数列 \(a\).你希望从中选出一些数,使得这些数的和对 \(2\) 取模后的结果为 \(P\).求方案数. 数据范围:\(1\leqslant n\leq ...
- Jquery监控audio单选框选中事件(实际通过click)
$('input:radio[name="pathType"]').click(function(){ var checkValue = $('input:radio[name=& ...
- cmake之if
note if 要 与endif配对使用 语法含义 表达式 含义 if (not expression) 与 expression相反 if (var1 AND var2) var1与var2都为真时 ...