java的运算符
1.1算术运算符
单目: ++(自增1) - -(自减1)
++:
a、 i++:先使用i当前的值,然后i=i+1
b、 ++i: 先i=i+1,再使用i(加完以后的值)
--:
a、 i--:先使用i当前的值,然后i=i-1
b、 --i:先i =i-1,再使用i(减完以后的值)
双目:+, -, *, / ,%(取余或取模)
1、操作的时候,只能操作同一个类型的数字
2、返回结果也必须是一个类型的(否则可能产生溢出、损失精度)
3、%----->是取两数相除的余数。如12%7=5
三目(条件运算赋或三元运算符):
格式:条件表达式? 表达式1 : 表达式2
如果条件表达式为true,则整个运算表达式的值为表达式1,反之为false,则为表达式2
1.2关系运算符
关系运算符的表达式返回值都是boolean类型的值。
== , != ,>,<,>=,<=
!=是不等于
1.3逻辑运算符
a.短路运算:||,&&
如果满足某一条件,另外一个就会被跳过,不会执行。
如:条件1||条件2,如果条件1为真(true),则表达式为真,条件2就不用运行判断
条件3&&条件4,如果条件3为假(false),则表达式为假,条件4就跳过,不做判断。
b.非短路运算:|,&
不管条件是什么,两个条件都会执行。
如:条件1 | 条件2,不管条件是否为真(true),条件2都会执行判断
1.4赋值运算符
=, += ,-=, *=, /= ,%=, &= ,^=, |=, <<=, >>=
例:+=,
int a =1; a += 2;等效于a = a + 2
1.5位移运算符
位移就是将数的二进制数往左或右移动
<< 带符号左移
>>带符号右移
>>> 无号右移
例: int a1 = 8; // 0000 0000 0000 1000
System.out.println(a1>>>2); //// 0000 0000 0000 0010
输出为 2
移动有一定规律可循的:如向右移动数值就会变小,向左移的话数值变大。
例子:十进制8的二进制数,向右移动2位,就变小了,变为2
移动前:0000 0000 0000 1000(8)
移动后:0000 0000 0000 0010(2)
又或二进制数8,向左移动2位,就变大为32
移动前:0000 0000 0000 1000(8)
移动后:0000 0000 0010 0000(32)
所以,总结就是
向右移动N位,就是除以2的N次幂(2^N),8向右移两位就是8除以2的2次幂,就等于2
向左移动N位,就是乘以2的N次幂(2^N),8向右移两位就是8乘以2的2次幂,就等于32
- 大小: 22.4 KB
分享到:
相关推荐
java李兴华学习笔记之JAVASE基础部分.pdf
内含学习大数据前的一些javaSE基础知识,帮助大家更好的入门大数据,里面包含java的基础知识以及面向对象等的一些知识,详细总结了本人整个学习过程中的内容。
JavaSE基础学习笔记 JavaSE基础学习笔记 JavaSE基础学习笔记
javase基础 Java学习资料
JavaSE是java分类中的标准版,是刚接触java要学习的基础知识。JavaEE是java分类中的企业版,是java中的高级,涉及到的知识广泛。JavaME中M是Micro的缩写,用在嵌入式等电子设备中。
JavaSE基础 Java学习资料 java代码
javase 基础学习代码 Java学习资料
JAVASE基础语法的学习 Java学习资料
学校JAVASE 基础练习 Java学习资料
javase 基础演示代码 Java学习资料
Java SE 基础 练习 Java学习资料 javase自学练习代码
JavaSE基础入门视频教程33天之(24),有利于没有基础的人学习,学精后工资10K以上。
Java基础 java学习笔记 Java Java基础Markdown学习笔记,可转换成PDF、Word等格式
大家好,这是近期练习过的相关Java代码,内附完整的解析注释等,建议Java复习及初学者学习使用~ 另外,“Python从入门到人工智能”专栏 持续更新中,欢迎大家订阅、交流和学习。
在学习完JavaSE基础后有幸观看了马士兵老师的坦克大战教学视频,并打算沿着马老师的思路写一款小游戏来巩固JavaSE知识。 本游戏的想法来源于小时候在4399玩的一款大鱼吃小鱼小游戏,说不定现在还能找到。 ● 本游戏的...
详细记录了java学习中javase的基础笔记。里面有上课时的源代码。
适应与java的初学者与零基础的学习,系统的介绍了javaSE的内容
学习JavaSE(Java基础知识)时编写的代码 Java学习资料
JavaSE就是一种标准版,是Java中的基础部分,不过后来的各种框架,各种产品都是基于JavaSE,也就是JavaSE是java向上发展的基础,Java任何高级产品的底层基础都是JavaSE,所以如果要学习,把它学扎实,牢固是很有必要的...