运算符
来源:互联网 发布:http默认端口号 编辑:程序博客网 时间:2024/05/18 04:43
1.赋值运算符:=用来给变量赋值的
注意点:对变量赋值的时候,要注意,变量是否为原变量,
如果为原变量,变量名前不要加类型,如果是新变量,那么加类型。
+=:a+=b --> a=a+b-=:a-=b --> a=a-b
*=:a*=b --> a=a*b/=:a/=b --> a=a/b
2.算术运算符
+-*/%(模运算)++--
小括号>乘除法>加减法 顺序运算
+加法运算:只有+两端都是数值的时候
-:减法运算-两边只能是数值类型连续相减按顺序执行
如果出现小括号,先进行括号里运算(优先级更高)
*:乘法运算
*两边的只能是数值类型*运算比+ -优先级更高,同时出现先运算*
小括号的优先级比乘法运算级更高
/:除法运算两端只能是数值类型
int/int 结果一定是int 如果是小数,那么取小数的整数部分,小数部分不管 5/3=1
%:取余(余数) 5%3=2
++:自增1
a++:int b = a++;1.将a的值赋给b2.a进行自增1
++a: int b = ++a;1.a进行自增12.将a的值赋给b
--:自减1
a--:int b = a--;1.将a的值赋给b2.a进行自增1
--a: int b = --a;1.a进行自增12.将a的值赋给b
3.字符串连接运算符:+
如果+两端都是String类型,此时+是字符串连接运算符,功能:拼接字符串
+一端是String,另一端是数值,+也是连接运算符
出现多个+,按顺序两两执行运算,一端出现了String,那么连接运算,
结果也是String类型,再继续运算
System.out.println(3+5+""+7+9);//结果为879
4.比较运算符(关系运算符)
<><=>=!=(不等于)==(等于)
5.逻辑运算符(&&的运算级比||高)
用于boolean类型
&&(并且) a && b||(或者) a||b!(非) !true(false)
&(并且)|(或者)
&与&&的区别:1.&&:短路与
boolean b = (3>5)&&(6<7) 前面为false(只执行前面一个,后面不执行)
前面为true,后面执行
2.&:不短路两边都会执行判断,再得出结果。
|与||的区别:1.||:短路或
boolean a = (3<5) || (6>7) 前面为true(只执行前面一个,后面不执行
前面为false,后面执行
2.|:不短路两边都会执行判断,再得出结果。
6.条件(三目)运算符
boolean表达式 ? 表达式1:表达式2
1.int j =8, k =5;
int r=j>k?j:k;
System.out.println(r);//结果为8
2.//嵌套使用
int a = -3;
String r = a > 0 ? "正数" : (a == 0 ? "0":"负数");
System.out.println(r); //结果为负数,因为 a 的值小于 0,即boolean 表达式的值为 false ,
则取问号后第二个表达式的值作为表达式的结果。而问号后的第二个表达式也是一个三目运算符所构成的表达式。因为 a==0 表达式的值为 false,则取“负数”为表达式的结果。
类中的内容:
注意点:对变量赋值的时候,要注意,变量是否为原变量,
如果为原变量,变量名前不要加类型,如果是新变量,那么加类型。
+=:a+=b --> a=a+b-=:a-=b --> a=a-b
*=:a*=b --> a=a*b/=:a/=b --> a=a/b
2.算术运算符
+-*/%(模运算)++--
小括号>乘除法>加减法 顺序运算
+加法运算:只有+两端都是数值的时候
-:减法运算-两边只能是数值类型连续相减按顺序执行
如果出现小括号,先进行括号里运算(优先级更高)
*:乘法运算
*两边的只能是数值类型*运算比+ -优先级更高,同时出现先运算*
小括号的优先级比乘法运算级更高
/:除法运算两端只能是数值类型
int/int 结果一定是int 如果是小数,那么取小数的整数部分,小数部分不管 5/3=1
%:取余(余数) 5%3=2
++:自增1
a++:int b = a++;1.将a的值赋给b2.a进行自增1
++a: int b = ++a;1.a进行自增12.将a的值赋给b
--:自减1
a--:int b = a--;1.将a的值赋给b2.a进行自增1
--a: int b = --a;1.a进行自增12.将a的值赋给b
3.字符串连接运算符:+
如果+两端都是String类型,此时+是字符串连接运算符,功能:拼接字符串
+一端是String,另一端是数值,+也是连接运算符
出现多个+,按顺序两两执行运算,一端出现了String,那么连接运算,
结果也是String类型,再继续运算
System.out.println(3+5+""+7+9);//结果为879
4.比较运算符(关系运算符)
<><=>=!=(不等于)==(等于)
5.逻辑运算符(&&的运算级比||高)
用于boolean类型
&&(并且) a && b||(或者) a||b!(非) !true(false)
&(并且)|(或者)
&与&&的区别:1.&&:短路与
boolean b = (3>5)&&(6<7) 前面为false(只执行前面一个,后面不执行)
前面为true,后面执行
2.&:不短路两边都会执行判断,再得出结果。
|与||的区别:1.||:短路或
boolean a = (3<5) || (6>7) 前面为true(只执行前面一个,后面不执行
前面为false,后面执行
2.|:不短路两边都会执行判断,再得出结果。
6.条件(三目)运算符
boolean表达式 ? 表达式1:表达式2
1.int j =8, k =5;
int r=j>k?j:k;
System.out.println(r);//结果为8
2.//嵌套使用
int a = -3;
String r = a > 0 ? "正数" : (a == 0 ? "0":"负数");
System.out.println(r); //结果为负数,因为 a 的值小于 0,即boolean 表达式的值为 false ,
则取问号后第二个表达式的值作为表达式的结果。而问号后的第二个表达式也是一个三目运算符所构成的表达式。因为 a==0 表达式的值为 false,则取“负数”为表达式的结果。
类中的内容:
package day03;public class OperDemo {public static void main(String[] args) {int a = 5;a++;System.out.print(a);//6 单独运算前后++一致,都加1,没影响int b = 5;++b;System.out.print(","+b);//6int c = 5;int d = c++;System.out.print(","+c);//6System.out.println(","+d);//5 c先赋值给d,再自增1int e = 5;int f = ++e;System.out.print(e);//6System.out.println(","+f);//6int g = 5, h = 5;System.out.print(g--);//5 先输出g的值,再自减1System.out.print(","+g);//4System.out.print(","+--h);//4 先自减1,再输出h的值System.out.println(","+h);//4}}
效果如图:
package day03;import java.util.Scanner;public class LeapYear {public static void main(String[] args) {Scanner scan = new Scanner(System.in);System.out.println("请输入年份:");int year =scan.nextInt();boolean flag = (year%4 == 0 && year%100 != 0) || year%400 == 0;//&&的运算级比||高String str = flag ? year+"是闰年" : year+"是平年";System.out.println(str);scan.close();//关闭scan}}
效果如图:
阅读全文
1 0
- 运算和运算符
- 运算符
- ??运算符
- 运算符
- << 运算符
- 运算符
- 运算符
- 运算符
- 运算符
- 运算符
- 运算符
- 运算符
- ?? 运算符
- 运算符
- 运算符
- 运算符
- 运算符
- 运算符
- IDEA下载安装/破解/配置
- mapper.xml是怎样实现Dao层接口
- shell中单引号,双引号以及反引号的区别
- es6语法——解构
- C/C++ 中的0长数组(柔性数组)
- 运算符
- 美团面试
- Java—URL的equals比对方式
- win7任务栏右下角图标空白解决办法
- HDU6059 Kanade's trio (Trie)
- Leetcode:621. Task Scheduler
- H5基础(3)-HTML5增强型表单标签
- SWT的button组件中,添加单击事件监听
- POJ 2635 The Embarrassed Cryptographer 大数取模