移位运算+字符串连接+流程控制

**

移位运算

**
" >> ":右移运算符,将左操作数向右移动,移位个数由右操作数决定
" << ":左移运算符,将左操作数向左移动,移位个数由右操作数决定
" >>> ":无符号左移位运算符

a>>b通用公式: a/(2^b%32)

移位运算符性质
适用数据类型:byte、short、char、int、long,对低于int型的操作数将先自动转换为int型再移位
对于int型整数移位a>>b,系统先将b对32取模,得到的结果才是真正移位的位数
对于long型整数移位时a>>b ,则是先将移位位数b对64取模
例子如:
移位运算
**

字符串连接

**

double x = 9.987;
		double y = 1;
		double t = x+y;
		String s = "Price is:"+x;//3个字符串常量对象“price is”、”9.987”、“price is 9.987”
		String st = "Total Price is:"+t;//3个字符串常量对象分别是 "Total Price is:"、
       “10.987”、"Total Price is:10.987 "
		System.out.println(s);		
		System.out.println(st);
		System.out.println(""+x+y);//5个对象,分别是“”、”9.987”、“9.987”、”1.0”、 “9.9871.0”
		System.out.println(x+y+"");//3个对象 分别是“10.987”、 “”、“10.987”

**

流程控制

**
顺序
分支语句
1.If,else

例:

if (i < 50){
System.out.println("* The input number is less than 50! *");}
else if(i==50){			
System.out.println("* The Input number is equal to 50!  *");}
else{			
System.out.println("*The input number is greater than 50*");}

(谁成立就输出谁)

2.Switdh(里面不能为long,这里只能放byte,short,char,int类型)

例:

Switch(int)://不能是long
  Case 1:    break;
  Case2:     break;
  Default  .....

循环语句
Java中的循环语句:for、dowhile、while

while和do while区别:wihle是只要符合条件就执行,dowhile是至少执行一次,先执行一次在判断是否符合条件
Breake 和continue:breake是跳出本层循环,continue是跳出本次循环进行下一次循环

break语句和标签(label)的结合可以用来指定从多个嵌套循环的某个循环中跳出。
例子:

 outer:
      for(int i = 0;i<10;i++)
      {
        System.out.println("Outer loop:");
        inner:
          while(true)
          {//从键盘缓冲区读取一个字符的ascii码
            int k = System.in.read();
            System.out.println("Inner Loop:"+k);
            if(k=='b') break inner;//跳出inner所标记的循环
            if(k=='q') break outer;//跳出outer标记的循环
          }
      } 

**

注意:

**
·For:先判断,后执行
·While:先判断,后执行(for的简写)
·Dowhile:先执行,后判断(在循环条件一开始为真时,while和dowhile是一样的,若循环条件一开始为假,while一次都不执行,dowhile 会执行一次)
·Break:跳出当前循环
·Continue:循环不结束,只是跳出本次循环
·Break+标签label:跳出label所标识的那层循环,注意非正常出口

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章