Java基础之分支语句,循环语句注意事项

一、什么是执行结构

1.顺序结构

2.选择结构

3.循环结构

如下图:


二、if语句:简单if语句、if-else语句、多重if语句、嵌套if语句

特殊的if语句:必须要求if或else语句中只能有一条语句

if(1>0)
    System.out.println("1");
else
    System.out.println("2");

三、switch语句

1、表达式的值必须是下述几种类型

int,byte,char,short,num;java7之后可以使String,不能用boolean,long,float,double等

case中的值必须是常量值或者被final修饰的变量,case值不能是一个范围

所有的case的值应不同,否则会报错

default子句是可选的

break是跳出某个循环

2、语法格式

 switch(表达式expr){
        case const1:
            statement1;
            break;
        case const2:
            statement2;
            break;
            … …
        case constN:
            statementN;
            break;
        default:
            statement_dafault;
            break;]
    } 

3.3、执行顺序:

所有的case都不满足需求的时候执行default中的内容
break帮忙跳出switch语句,如果执行过程中没有遇到break,继续向下执行直到遇到break为止

4.基本数据类型

1)数值型:
*整型:byte(-128~127) short int long
*浮点型: float double
2)字符型:char char类型占的是一个字符=两个字节=十六位
3)布尔型:boolean 注意,布尔类型的变量只有两种值:true false
2.引用数据类型:类、接口、数组

5.数据类型之间的转换

1)自动类型转换:byte short char ==>int==>long==>float==>double
	注意:a.当byte short char 之间进行运算时结果属于int型;
		b.boolean类型不可以转换为其它的数据类型。  	
2)强制类型转换:将容量大的数据类型强制转换成容量小的数据类型,必须使用"(目标数据类型)"符号;
	格式是:小的数据类型 = (小的数据类型)大的数据类型。
	注意:强转后会造成精度的损失(丢失),丢的是高位。.
3)变量与字符串进行运算:
"+":表示的是连接符,即运算结果是字符串

6.算数运算符 + - * /  % ++ --

 1.取模:% 取余数,结果的符号取决于被模数的符号。
  2.++:让变量的值自增1
     1)前++:++在变量的前面,先自增1,后运算
     2)后++:++在变量的后面,先运算,再自增1
  3.--:让变量的值自减1
     1)前--:--在变量的前面,先自减1,再运算
     2)后--:--在变量的后面,先运算,再自减1

7.赋值运算符  += -= *= /= %=

8.比较运算符 ==. <> .=< .>=.!=

9.逻辑运算符 & 、&&、|、||、!、与(运算符两端是条件表达式)

  1.逻辑与和短路与的区别: &  &&
     1)逻辑与:& 无论左端是否为false,右端都会执行。
     2)短路与:&& 只要左端是false,则右端不执行,结果都为false。
  2.逻辑或和短路或的区别:|  ||
     1)逻辑或:| 无论左端是否为true,右端都会执行。
     2)短路或:|| 只要左端是true,则右端不执行,结果都为true。
     注意:在日常开发中,我们建议使用短语与、短路或。

10.位运算符:对二进制进行操作(运算符两端是整数)

     >>(右移) 
     << (左移)
     >>> (无符号右移,注意:没有无符号左移<<< )
     & (按位求与)
     | (按位求或)
     ^ (按位求异或)
     ~ (反码,带符号位取反)
11.三目运算符 (条件表达式)?表达式1:表达式2;

12.面试题

1.switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?
2.switch中default的位置是否必须出现在最后?

答:2,default是case全局不匹配时才执行,放在任意的位置都可以,没有匹配值时就作为切入点,如果没有break将会继续执行下面的代码





猜你喜欢

转载自blog.csdn.net/qq_41813207/article/details/80248289