您的位置:首页 > 编程语言 > Java开发

Java基础---if语句,while语句,for语句

2015-08-17 23:42 441 查看
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

1:判断结构(重点)

三种格式:

第一种:if(条件表达式){
  执行语句;

       }
  System.out.println();
  举例:
  int age = 19;
  if (age >= 18)
  System.out.println("可以浏览本网站");
  
  System.out.println("完了");

第二种:if(条件表达式){ //if else和三元运算符的区别
执行语句; //三元运算符是一个运算符号,ifelse是一个语句

       }else{ //三元运算符运算后必须有结果,而且不能有语句
//ifelse可以没有结果,可以有语句

                执行语句;

       }
int x,y,z;
x = 5;
y = 10;
/*if (x > y){
//z = x;

}else{
//z = y;
}*/
z = (x > y) ? x : y;
  举例:
   int x = 1;
if (x == 1){
System.out.println("男厕所欢迎您");
}else {
System.out.println("女厕所欢迎您");
}

第三种:if(条件表达式){

               执行语句;

       }else if (条件表达式){

              执行语句;

       }else{

              执行语句;

       }
举例:
int x = 1;
if (x == 1){
System.out.println("男厕所欢迎您");
}else if(x == 0){
System.out.println("女厕所欢迎您");
}else {
System.out.println("无法识别您的性别");
}

2:switch
格式:
int x = 10;
switch (表达式){//byte,short,int,char,String 枚举

case 表达式里对应的值:
执行语句;
//break;
case 表达式里对应的值:
执行语句;
break;
......
default:
执行语句;
break;//最后一句的break可写可不写,因为程序已经执行到了末尾
}
举例:
String name = "张三";
String gender = "先生";
switch (gender){
case "先生":
System.out.println(name + "是一位" + gender + "喜欢吃饭睡觉打dota");
break;
case "女士":
System.out.println(name + "是一位" + gender + "逛街购物美容");
break;
default:
System.out.println(name + "是一位" + gender + "打雌性激素保持美貌容颜");

}
重点:switch 结束只有两种情况
1,当程序执行过程中遇到了break
2,当程序执行到了末尾处
应用 switch需要注意的两个细节
1,当switch表达式的值与其中一个case匹配的时候,这个case里没有写break;语句,那么程序会继续执行下个case里
的执行语句,不会再对case值进行判断,应用于当几个case里的值所要执行的语句都一样的时候,我们可以不写break
例如:我们做一年有四季的例子:
int month = 4;
switch (month){
case 3:
case 4:
case 5:
System.out.println(month+"月是春季");
break;
case 6:
case 7:
case 8:
System.out.println(month+"月是夏季");
break;
case 9:
case 10:
case 11:
System.out.println(month+"月是秋季");
break;
case 12:
case 1:
case 2:
System.out.println(month+"月是冬季");
break;
default:
System.out.println(month+"月没有这样的月份")

}//上述例子就是三个case里面的值输出都一样的,所以我们省略了break;这样会少写几行代码,提高效率

2,当我们把 default 不是写在最后,default 里面还没有写break的是时候,switch里的表达式与各个case里
的值都不匹配的时候,上面两个条件同时满足的话,程序在default里执行完了还会再去执行case里的语句
例如:
int x = 3;
switch (x){

case 4:
System.out.print("a");
break;
default:
System.out.print("b");//当程序执行到了default但是他没有break,下面的case值不再判断,程序继续执行
case 5:
System.out.print("c");
case 6:
System.out.print("d");
break;//遇到break,程序跳出
case 7:
System.out.print("e");
}

3:
(1)while循环
格式:
while (条件表达式){
循环体;
控制循环次数;
}
while(true) {

}
例如:
int x = 3;
while (x<6){
System.out.println("x="+x);//循环体
x++;//用x自增来控制循环次数
}
(2)do while 循环
格式:
do{
循环体;
控制循环次数
}
while (条件表达式);
例如:
int x = 3;
do{
<
a6c2
/span>System.out.println("x="+x);//循环体
x++;//用x自增来控制循环次数
}
while (x<6);
while和do while的区别:
dowhile语句会先执行循环体,再去判断条件,也就是说无论条件是否满足他都至少要执行一次循环体,先执行
再判断
while 先判断条件,只要条件不满足就不在执行循环体了,先判断,再执行.

(3)for 
格式:
for(初始化表达式1;循环条件表达式2;循环后的操作表达式4){
执行语句;(循环体)3
}
例如:
for(int x=0; x< 3;x++ ){
System.out.println("x="+x);
}
问个问题初始化表达式可不可以定义在外面,循环后的表达式可不可以定义在大括号里面?

(4)for 的嵌套循环,建议做题的时候就弄个双层嵌套就可以,不要弄太多层,影响效率
格式:
for(初始化表达式;循环条件表达式;循环后的操作表达式){//这是外层循环
执行语句;(循环体)
//下面是内存循环
for(初始化表达式;循环条件表达式;循环后的操作表达式){
执行语句;(循环体)
}
}

for (int x=1;x < 6;x++ ){
for(int y=1; y<6; y++){

System.out.print("*");

}
System.out.println();
}

4:continue和break
a,这两个语句离开应用范围,存在是没有意义的。
b,这两个语句单独存在下面都不可以有语句,因为执行不到。
c,continue语句是结束本次循环继续下次循环。
d,标号的出现,可以让这两个语句作用于指定的范围。

语句的最后总结
(1)什么时候用变量? 当数据不确定的时候,就定义变量来存储数据。
(2)什么情况下,使用哪个语句?
A:当对某几个值进行判断的时候,可以使用if语句,或者switch语句。
  建议使用switch。但是,使用switch要注意,它只能操作六种类型的值,byte,short,int,char,String,枚举。
  如果是六种以外的值,需要使用if。
B:如果对数据区间进行判断,或者对运算结果是boolean类型的进行判断,用if语句。
C:当需要某些语句执行很多次的时候,使用循环结构。如果定义变量只为循环增量存在时,可以使用for语句。
         如果对一个条件进行一次判断使用if,如果对该条件进行多次判断,使用while
D:如果要结束循环,可以控制循环条件,或者通过break语句完成。
 如果要控制循环的流程,是否该继续执行,可以通过continue或者break来完成。
E:break结束当前所在循环。continue结束本次循环,进入下一次循环。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: