java中运算符与表达式
运算符是用来完成一个动作的特定语言的语法记号。
-位运算符
|
运算符 |
Java |
|
加 |
+ |
|
减 |
- |
|
乘 |
* |
|
除 |
/ |
|
取模 |
% |
1.整数运算和小数运算
int n =12 ;
int m = 5;
float y = n/m;
System.out.println(n/m);// 2
System.out.println(n/5.0);// 2.4
System.out.println(12.0/m);// 2.4
System.out.println(y);// 2.0
注意:最后一行的输出结果是2.0
2.字符串连接符:+
String s1="Tom"+1+2;
System.out.println(s1);
//输出:Tom12 String s2=1+2+"Tom";
System.out.println(s2);
//输出:3Tom
3.自加自减运算符:++ 和 --
前序增减:先运算再赋值
后序增减:先赋值再运算
int i = 1;
System.out.println(i);// 1
System.out.println(++i);// 2
System.out.println(i);// 2
System.out.println(i++);// 2
System.out.println(i);// 3
4.关系运算符
|
运算符 |
Java |
|
相等 |
== |
|
不相等 |
!= |
|
大于 |
> |
|
小于 |
< |
|
小于等于 |
<= |
|
大于等于 |
>= |
返回值为boolean型。
5.逻辑运算符
|
运算符 |
Java |
|
逻辑与 |
&& |
|
逻辑或 |
|| |
|
逻辑非 |
! |
int i=1,j=2;
boolean flag1 = (i>3)&&((i+j)>5);
boolean flag2 = (i<2)||({i+j}<6);
6.位运算符
|
运算符 |
Java |
|
与 |
& |
|
或 |
| |
|
取反 |
~ |
|
异或 |
^ |
|
左移 |
<< |
|
右移 |
>> |
//对一个变量进行按位操作
int x = 9;
int y = x&8;
System.out.println(y);//化为二进制,然后对应位相与。1001&1000=1000。y=8 int x = 9;
System.out.println(x<<1);//左移以为相当于乘于2。 9*2=18。 1001<<1=10010=2+16=18。
7.三目条件运算符
int score = 61;
String result = score>=60?"及格":"不及格";
System.out.println(result);//及格
8.运算符的优先级
|
优先级 |
运算符类型 |
运算符 |
|
优先级最高 |
一元运算符 |
[ ] . ()(方法调用) |
|
! ~ ++ -- + - new ()(强制类型转换) |
||
|
优先级较高 |
算术运算符 位移运算符 |
* / % + - |
|
<< >> |
||
|
优先级较低 |
关系运算符 位移运算符 逻辑运算符 |
< <= > > == != |
|
& ^ | |
||
|
&& || |
||
|
?:(三元判断运算符,例如:A>B?X:Y) |
||
|
优先级最低 |
赋值运算符 |
= |
|
+= -= *= /= %= |
java中运算符与表达式的更多相关文章
- Lambda 表达式,Java中应用Lambda 表达式
一.Lambda 表达式 简单来说,编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数. 链接:知乎 先举一个普通的 Python 例 ...
- java中运算符的优先级
所谓优先级,就是在表达式中的运算顺序.Java 中常用的运算符的优先级如下表所示: 级别为 1 的优先级最高,级别 11 的优先级最低.譬如,x = 7 + 3 * 2 得到的结果是 13 &quo ...
- [Java 基础]运算符和表达式
Java运算符 (1)赋值操作符 赋值操作符(=)表示:取右边的值(即右值),把它复制给左边(即左值). 右值可以是任意的常量.变量或表达式(只要可以生成一个值). 左值必须是一个明确的.已命名的变量 ...
- 慕课网-安卓工程师初养成-3-9 Java中运算符的优先级
来源 http://www.imooc.com/code/1315 所谓优先级,就是在表达式中的运算顺序.Java 中常用的运算符的优先级如下表所示: 级别为 1 的优先级最高,级别 11 的优先级最 ...
- JAVA基础——运算符和表达式
JAVA语言常用的运算符和表达式详解 一.简述 运算符是一种"功能"符号,用以通知 Java 进行相关的运算.譬如,我们需要将变量 age 的值设置为 20 ,这时候就需要一个&q ...
- java的运算符和表达式
)1.算数运算符:java中常用的算术运算符除了 +.-.*./之外,还有%(取余).++(自增).--(自减). )1.1%(取余):可适用于整数,char,浮点数的取余中.在取余中,如果进行运算的 ...
- Java中的Lambda表达式
Lambda来源于希腊字母入,发音为 /'læmdə/对高数有所了解的人都知道λ用于声明一个数学逻辑系统,表示根据XX的输入参数,会返回某个Y结果.这正是编程语言中函数(方法)的意思.因此Lambd ...
- java中运算符——进度1
Class Demo1{ public static void main(String[] args) { /* 一.逻辑运算法用于连接两个boolean类型的表达式 ...
- AJPFX辨析Java中运算符 ++ 和 += 的区别
我们都知道Java中 ++ 和 +=1 都是把数字增加一后,把值赋给左边,那二者有什么区别呢? i+=1 运行的底层Heap申请一个区域存放i,在数据区域开劈一个区域存放1,2个内存段被数据被送入到 ...
随机推荐
- 关于在eclipse下的mapreduce工程打包成jar包的问题(包含第三方jar包)
这个问题也是在开发项目中经常遇到的一个问题,网上提供了很多方法,但是我发现很多并不适用,这里推荐两种方法,一种肯定没问题,就是比较麻烦,另一种是适用FatJar来打包,但是我没成功,原因估计出在ubu ...
- CodeForces 731E Funny Game
博弈,$dp$. 设$f[i]$表示 如果先手第一次出手取到位置$i$,直到游戏结束,双方均采取最优策略,先手-后手得分的差值. 那么$f[i]=min(sum[i]-sum[j]+maxf[j+1] ...
- Bzoj3566/洛谷P4284 [SHOI2014]概率充电器(概率dp)
题面 Bzoj 洛谷 题解 首先考虑从儿子来的贡献: $$ f[u]=\prod_{v \in son[u]}f[v]+(1-f[v])\times(1-dis[i]) $$ 根据容斥原理,就是儿子直 ...
- HDU 6065 RXD, tree and sequence (LCA DP)
RXD, tree and sequence Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 524288/524288 K (Java ...
- 前m大的数
前m大的数 Time Limit: 1000 MS Memory Limit: 32768 KB 64-bit integer IO format: %I64d , %I64u Java class ...
- noip 2008 传纸条
题目描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了.幸运的是 ...
- HDU 6053 TrickGCD(分块)
[题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=6053 [题目大意] 给出一个数列每个位置可以取到的最大值, 问这个可以构造多少个数列,使得他们的最 ...
- BZOJ 3450 Tyvj1952 Easy(期望)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=3450 [题目大意] 给出一个字符串,包含o,x和?,一个字符串的得分为 每段连续的o的 ...
- 【深度搜索+剪枝】POJ2362-Square
从昨天晚上写到现在,一直在TLE,现在终于剪枝完成了_(:зゝ∠)_ [思路] 深搜:用这类型组合题目最基本的深搜,变量side记录当成已经组成了几条变,sl表示当前在组合的边已经有的长度.如果当前s ...
- 【KMP模板】POJ3461-Oulipo
[题意] 找出第一个字符串在第二个字符串中出现次数. [注意点] 一定要先将strlen存下来,而不能每次用每次求,否则会TLE! #include<iostream> #include& ...