黑马程序员_04_算术_转移_逻辑_位_三元_运算符_判断语句

来源:互联网 发布:淘宝商城多少钱 编辑:程序博客网 时间:2024/05/28 05:17
 
---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------
 


0209-0209-0209-0209-0209-0209-0209-0209-


1、算数运算符:
    运算 运算符  范例   结果
    
正号:+      
负号:-

加  :+
减  :-
乘  :*
除  :/ 5/51
取模:% 5%50


    自增:++ a=2 b=a++a=3 b=2 
    自增:++ a=2 b=++a     a=3 b=3
    自减:-- a=2 b=a--a=1 b=2
    自减:-- a=2 b=--aa=1 b=1
    
    字符串相加:+ "He"+"llo"    Hello

2、a%b 如果a<b,那么结果是a;
    如果a=b,那么结果是0;
    如果b=1,那么结果是0;
3、字符串和任何数据使用+都是相连接,最终都会变成字符串。


0210-0210-0210-0210-0210-0210-0210-0210-
转义字符:通过\和替他字母(或者符号)连用改变 原来字母(或者符号)的意义
\n换行
\r按下回车键,
\b退格,相当于backspace键
\t制表符,相当于tab键

System.out.println("I\"Love\"You");结果是:I"Love"You
System.out.println("I\'Love\'You");结果是:I'Love'You
System.out.println("I\\Love\\You");结果是:I\Love\You
2、char a='\n'; 正确
char b='你'; 正确,一个汉字是两个字节,char类型的数据也是两个字节。


0211-0211-0211-0211-0211-0211-0211-0211-
1、赋值运算符
符号:= += -= *= /= %=
思考:
short s=3;
s=s+4;
s+=4;
有什么区别?

s=s+4//编译失败,s会被提升为int类型,结果也是int类型,无法赋值给short类型
s+=4 //编译通过,因为+=运算符在给s赋值时,自动完成了强转操作。
2、比较运算符
符号:== != > >= < <=  ,比较的结果是boolean类型,要么true,要么false


0212-0212-0212-0212-0212-0212-0212-0212-
1、&:与
当两边都是true时,结果是true;
只要有一边是false,结果就是false;
2、|:或
当两边都是false时,结果是false;
只要有一边是true,结果就是true。


3、^:异或
当两边相同时,结果是false;
当两边不同时,结果是true。
4、!:非
5、&&:And
当左边是false时,右边就不运算了,这样可以提高代码的效率。
对于&而言,无论左边的值是true还是false,右边都会运算。
6、||:Or
当左边是true时,右边就不运算了,这样可以提高代码的效率。
|:两边都运算。

0213-0213-0213-0213-0213-0213-0213-0213-
1、左移:<<    左移n位,其实就是乘以2的n次幂
2、右移:>>    右移n位,其实就是除以2的n次幂
3、无符号右移:>>>
   >>:最高位补什么有原有数据的最高位决定。
      如果原有数据的最高位是1,那么就用1补空位。
      如果原有数据的最高位是0,那么就用0补空位。
  >>>:无论原有数据的最高位是什么,右移后都用0补空位。
  
0214-0214-0214-0214-0214-0214-0214-0214-
一个数异或同一个数两次,结果还是那个数。


0215-0215-0215-0215-0215-0215-0215-0215-
【两个数互换值得三种方式】=【1种引入第三方的方式】+【2种不引入第三方的方式】


0217-0217-0217-0217-0217-0217-0217-0217-
1、三元运算符
好处:可以简化if(){}else{}代码
弊端:因为是一个运算符,所以运算完必须得有一个结果。
     故不能出现如下这样的代码:
      int b=4;
      int z;
      z=(b>3)?System.out.println("aaaaa"):300;
2、if语句的三种形式


0219-0219-0219-0219-0219-0219-0219-0219-
1、在switch语句中,被判断的数据的数据类型只能是以下四种:byte short int char
2、case语句和default语句位置可以互换,但是先执行case语句,再执行default语句。
3、switch语句结束有两种情况,一种是执行到break,另一种是执行到switch语句的最后一个花括号 "}"
4、如果匹配的case或者default没有对应的default,那么程序会继续 向下执行,运行可以执行的语句,
   直到遇到break或者switch结尾结束。


4、if 和 switch 的区别:
(1)、if语句可以判断区间,switch也可以判断区间,但是比较麻烦!!
(2)、if语句可与判断布尔类型的结果,但是switch不能。
5、if和switch的选择
(1)、如果需要对具体数值进行判断,且数值不多,那么请使用switch语句,此时switch语句效率相对较高。
(2)、如果需要对区间、布尔类型数据进行判断,那么请选择if语句。



---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------



0 0
原创粉丝点击