继续着java的学习内容,已经一个星期,学习的过程中发现对C语言的认识又有了一个提高,应该是学习java se的一个惊喜吧。好了废话不多说了,继续记录笔记了!

1.关系运算符:主要有以下几种:

  • 大于 >
  • 小于 <
  • 等于 ==  连续两个等号表示数学意义上的相等
  • 不等于 !=
  • 大于等于 >=
  • 小于等于 <=
  • 关系运算的结果是个布尔值。

2.逻辑运算符:重点学习两个!逻辑运算符本身也返回一个布尔值。

1).逻辑与:使用&&
逻辑与是个双目运算符(即有两个操作数的运算符)
只有当两个操作数都为真的时候,结果才为真;其余情况结果全部为假;
程序例子:
public class muxiaofei
{
 public static void main(String[] args)
 {
  int a=1;
  int b=2;
  int c=3;
  int d=4;
  
  boolean e=(a>b)&&(c<d);
  System.out.println(e); 
 }
}
结果为false;
2).逻辑或,使用||表示,也是双目运算符。
只有当两个操作数结果都为假的时候,结果才为假,其他情况结果均为真。
public class muxiaofei
{
 public static void main(String[] args)
 {
  int a=1;
  int b=2;
  int c=3;
  int d=4;
  //boolean e=(a>b)&&(c<d);
  //System.out.println(e);
boolean e=(a>b)||(c>d);
System.out.println(e);
  
 }
}
结果为true

3.关于逻辑运算符的短路特性:经常考到。
1).先看下面这个程序:
public class muxiaofei
{
 public static void main(String[] args)
 {
  int a=1;
  int b=2;
  int c=3;
  int d=4;
  int f=5;
  
  boolean e=(a>b)&&((f=c)<d);
  System.out.println(e);
  System.out.println(f);  
 }
}
此时输出为
true 
5
这儿一定要注意;
逻辑与:如果第一个操作数为false,那么结果肯定就是false,所以在这种情况下,将不会执行逻辑与后面的运算了。即发生了短路。
2).逻辑或:
同样看一个程序:
public class muxiaofei
{
 public static void main(String[] args)
 {
  int a=1;
  int b=2;
  int c=3;
  int d=4;
  int f=5;
  
  boolean e=(a<b)||((f=c)<d);
  System.out.println(e);
  System.out.println(f);
  
 }
}
此时输出为
true
5
这里,如果第一个操作数为true,那么结果肯定是true,所以在这种情况下,将不会执行逻辑与后面的运算了,即同样发生了短路。

4.关于变量的自增与自减运算:
eg:a=a+1;此时=号表示将a+1计算的值赋值给左边;
    a+=1;等价于a=a+1;
    a++;
    ++a;
也就是说自增1有4种表达,但是自增2呢就不可以这样了!

eg:
int a=3;int b=a++;
先把a取出来复制给b,然后再执行a++
int a=3;int b=++a;
先执行++a,然后再赋值给b;

总结:如果不把a++赋值的话,a++和++a都是一样的结果;
同理,a– 和 –a
int a=3;int b=a–;
int a=3;int b=–a; 结果是不一样的

Java SE 第五记 运算符续(opreator cont)

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.