03 Java学习语言基础——运算符

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_44787898/article/details/102155559

Java学习语言基础03

运算符

算数运算

  • 加(+)、减(-)、乘(*)、除(/)、取余(%)。
  • 自增(++)、自减(–)-------单独使用时,在前后无差别,被使用时在前后有差别
//结果是8,整数除法会取整
int a = 120;
int b = 15;
int c = a/ b;

//计算a除以2取余数,结果是1
int a =5;
System.out.printIn(a % 2);

int i= 10;
int m= i++;// ++(--)在后时,为先用后加(减)。
System.out.println(m+"," + i);// 10, 11
intn=++i;//  ++(--)在前时,为先加(减)后用。
System.out.printIn(n+ "," + i); // 12, 12

关系运算

  • Java关系运算用于判断数据之间的大小关系。
  • Java提供如下关系运算符:">" (大于),"<"(小于),‘’>=” (大于等于), “<=” (小于等于),"==” (等于),"!=" (不等于)
  • 关系表达式的值为boolean类型( “true” 或"false" )
int a=10;
boolean b1=a>10;//false
boolean b2=(a+1)>=10;//true

逻辑运算

  • 逻辑运算的操作数均为boolean表达式。
  • Java提供如下逻辑运算符: "&&” ( 与)、"l”(或)、 ”I” (非)
    在这里插入图片描述
double income = 4000;
boolean b1 = (income >= 3500) && (income < 5000);
System.out.printIn(b1); // true

int num= 30;
boolean b2 = num<0 | num > 100;
System.out.println(b2); // false

boolean b3 = (str != null) && (str.length()> 0);
//"&&” 、"I” 具备"短路”的特性:如果通过第一 个表达式的值即可得出最后的结果,则不计算第二个 表达式。

  • "!"的优先级最高
  • 短路要清楚 “|”,"&"不短路

赋值运算符

  • “=” 称为赋值运算符,用于对变量赋值。
  • 赋值表达式本身也有值,其本身之值即为所赋之值。可以使用扩展赋值表达式( +=、-=、*=、/-…)
int num = 90;
int index = num % 5;

int a, b, c;
a=b =c= 100;//"c=100”整个表达式的值为100

int sum = 100;
sum += 10;//相当于"sum= sum + 10”

short s1=5;
s1=s1+10;//编译错误
s1+=10;//正确,扩展赋值运算自动强转

字符串连接运算符

  • "+” 可以实现字符串的连接。同时可以实现字符串与其他数据类型的"相连”
  • 若两边为数字,则做加法运算
  • 若有一边为字符串,则做字符串拼接
int a = 100;
String msg = "a="+ a;
System.out.println(msg);//结果为: a=100

msg=""+100+200;
System.out.println(msg);//结果为: 100200

msg= 100 + 200 + "";
System.out.println(msg);//结果为: 300

使用条件(三目)运算符

  • 条件运算符又称“三目”运算符,其结构为:boolean表达式?表达式1 :表达式2
  • 条件运算符的规则如下:
    -先计算boolean表达式;
    -如果boolean表达式的值为true ,整个表达式的值为表达
    式1的值;
    -如果boolean表达式的值为false ,整个表达式的值为表达
    式2的值。
int a = 100, b = 200;
int flag = a > b ? 1 :-1; // flag的值为-1
条件(三目)运算符的嵌套
  • 条件运算符可以嵌套使用,所谓嵌套是指在条件(三目)表达式: "boolean表达式? 表达式1 :表达式2”中的表达式1或表达式2也是条件(三目)表达式。
int a=-3;
String r=a>0?"正数":(a==0?"O":"负数");
System.out.println(r); //结果为负数

上述代码将输出"负数 。这是因为a的值小于0,即boolean表达式的值为false , 则取问号后第二个表达式的值作为表达式的结果。而问号后的第个表达式也是一个三目运算符所构成的表达式。因为a==0表达式的值为false ,则取"负数”为表达式的结果。

下次补上这节笔记的实战演练小问题(代码)

猜你喜欢

转载自blog.csdn.net/qq_44787898/article/details/102155559