第二节:语句
if语句
知识点1、
如果if语句控制的条件只有一条,大括号可以不写
如果没有大括号的话,if语句只是控制离它最近的单条语句。a和if没关系。
知识点2:
if else 结构
简写格式:变量 = (条件表达式)?表达式1:表达式2; 三元运算符: 好处:可以简化 if else代码。 弊端:因为是一个运算符,所以运算完必须要有一个结果。 如果只是打印出来 没有结果,不能使用三元运算符。
知识点3:
冬季:12,1,2怎么办呢?先把大于1到12之外数筛选出去,再把春夏秋的语句写出来,剩下的都是冬季的月份。
switch语句:
知识点
//结束有两种方式:执行到break,执行到大括号。
int x = 2;
switch(x)//类型只能是:byte short int char
{
default: //default放到最上边,执行的时候仍然最后一个执行
System.out.println("no");
break;
case(4):
System.out.println("a");
break;
case(6):
System.out.println("b");
break;
case(2):
System.out.println("c");
}
知识点:
if和switch语句很像。具体什么场景下,应用哪个语句呢?
// 如果判断的具体数值不多,而是符合byte short int char这四种类型。虽然两个语句都可以使用,建议使用switch语句。因为效率稍高。
// 其他情况:对区间判断,对结果为Boolean类型判断,使用if,if的使用范围更广。
循环结构语句:
1、while 和 do while的区别
//while: 先判断条件,只有条件满足才执行循环体。 //do while: 先执行循环体;再判断条件,条件满足,再继续执行循环体。 //简单一句话:do while 无论条件是否满足,循环体至少执行一次。
for 与while语句的区别:
知识点1、
for(初始化表达式;循环条件表达式; 循环后的操作表达式) { 执行语句; }
知识点2、
加了分号,下面大方格里面的代码就不属于while循环了。
知识点3、
/* 1、变量有自己的作用域。对于for来讲:如果将用于控制循环的增量定义在for语句中。那么该变量只在for语句内有效。 for语句执行完毕,该变量在内存中被释放。 2、for和while可以进行互换。如果需要定义循环增量。用for更为合适。 */
循环的练习:
ForTst1:
知识点:
知识点:
条件表达式为空默认为True
ForTest2:
while 计算1到100之间的和:5050
public class Wushuai { public static void main(String[] args) { int x = 0,s=0; while(x<=100) { s=s+x++; } System.out.println("1+2+3+...+100="+s); } }
do while 计算1到100之间的和:5050
public class Wushuai { public static void main(String[] args) { int x = 0,s = 0; do { s = s + x++; }while(x<101); System.out.println(s); } }
for 计算1到100之间的和:5050
累加思想:通过变量记录每次变化的结果,通过循环的形式进行累加。
public class Wushuai { public static void main(String[] args) { int s = 0; for(int x = 0; x < 101; x++) { s = s + x; } System.out.println("1+2+3+...+100="+s); } }
ForTest3
1~100之间 7 的倍数的个数。并打印。
public class Wushuai { public static void main(String[] args) { for(int x = 0;x < 101; x++) { //System.out.println(x); if(x%7==0) System.out.println(x); } } }
public class Wushuai { public static void main(String[] args) { int count = 0; for(int x = 1;x < 101; x++) { //System.out.println(x); if(x%7==0) { System.out.println(x); count++; } } System.out.println("Number of multiples of 7 between 1 and 100: "+count); } }
for语句嵌套:
给for循环起个名字,可以跳出执行的for循环。
public class Wushuai { public static void main(String[] args) { for(int x= 0; x<3; x++) { for(int y = 0; y<4; y++) { System.out.println("x="+x); } } } }
public class Wushuai { public static void main(String[] args) { for(int x= 0; x<3; x++) { for(int y = 0; y<4; y++) { System.out.println("x="+x); break; } } } }
public class Wushuai { public static void main(String[] args) { w:for(int x= 0; x<3; x++) { for(int y = 0; y<4; y++) { System.out.println("x="+x); break w; } } } }