java循环判断_java基础条件判断循环语句

if else结构

if可以单独使用,表示假如满足某个条件,就执行某个操作

比如l

int age=10;

if(age<20){

System.out.println("我未成年");

}

解释:当age小于20的时候,就会打印 “我还很小”这句话。

有时候我们可能需要一个另外的分支,来表示假如某个条件不满足,需要执行某个操作

if(age>20){

System.out.println("我成年了");

}else{

System.out.println("我未成年");

}

解释:当age不大于20时(小于等于)时,会执行else里面的代码,即打印出 “我未成年”

还有很多时候,我们可能需要判断很多个分支,使用if else已经不能满足需求了,那么就必须使用 if elseif else这样的结构

例子:      int age=30;

if(age==10){

System.out.println(10);

}else if(age==20){

System.out.println(20);

}else if(age==30){

System.out.println(30);

}else{

System.out.println("其他");

}

上述代码最终会打印 30

例子:      int i=6;

if(i<3){

System.out.println("小于3");

}else if(i<9){

System.out.println("大于等于3 小于9");

}else{

System.out.println("大于等于9");

}

上述代码最终会打印  “大于等于3 小于9”

switch语句

switch语句是一种选择语句,可以通过匹配某个条件,来执行某块代码。

int s=2;

switch (s) {

case1:

System.out.println("执行第一条");

break;

case2:

System.out.println("执行第二条");

break;

case3:

System.out.println("执行第三条");

break;

default:

System.out.println("执行其他");

break;

}

上面这段代码会打印 "执行第二条"

解释:switch的小括号里面的表达式必须是int或char类型,case表示匹配项,匹配成功后,会执行冒号

后面的代码,然后break;

假如所有case都不能匹配,就会执行default后面的代码(是否有点像 if elseif else ?)

break关键字不是必须的,但是假如没有它,就会在从匹配的那一行一直往下执行。

使用break关键字可以强制终止循环与for循环:

for(int i = 0; i < 5; i++) {

if(i==3){

break;

} System.out.println(i);

}

这段代码会打印出: 0,1,2

即当i等于3的时候跳出了循环,注意,假如有多层循环,break只能跳出最靠近自己的那层循环

for循环与continue关键字, continue关键字可以忽略当次循环,直接进入下一次循环

比如:for (int i = 0; i < 5; i++) {

if(i==3){

continue; }

System.out.println(i);

}

这段代码会打印出:0, 1, 2, 4

即当i等于3的时候忽略当次循环,继续进行下一次循环。

小结:从这两个例子可以看出break和continue的区别:前者是直接跳出循环,终止整个循环;后者是停止当前循环,继续执行后面的循环,不会终止整个循环;

另外,break和continue可以用于所有循环语句

加强版for循环:

Listlist=new ArrayList();//List是一个接口 ArrayList也一个是接口

Studentstu=new Student();//一个类的一个对象

For(Studentstu:list){

System.out.println(“我是加强版”);

}

在这里, while每次循环开始前都会判断w是否小于10(第一次也不例外),满足条件就执行环

体内的代码,等到w的值增加到10的时候,就跳出循环,所以最终w的值为 10.

假如把w++这句话去掉会怎样?

假如去掉w++,那么程序进入while循环后,会发现每次w的值都为0,并且每次在计算w<10都会发现条件为true,所以会永远执行下去,这叫做死循环。

循环语句之do while循环

int dw = 0;

do {

System.out.println("dw的值为 "+dw);

dw++;

} while (dw < 10);

System.out.println(“最终dw的值为: ” + dw);//会打印10

dowhile循环始终会循环一次,然后再去判断while中的条件,这也是与单独while循环最大的区别

考虑下面的问题:

假如说dw的初始值为11,下面的程序会执行么?

会的,因为无论怎样,第一次总会执行。这时候最终dw的值为12

变量的作用域:

Public static int age;为类变量可以再本类中任何static方法(类方法)中直接引用。

Public int age;为成员变量(不含static),可以再本类中任何非static方法(对象方法)里直接引用。

局部变量:声明在方法体内或者某个语句块内,语句块包括循环语句(比如for,while,do while,if else),这类变量只能在花括号内使用。

for(inti=0;i<10;i++){

System.out.println(i+": "+j);

}

这个for循环中的变量i都只能在for循环的花括号里引用,在for循环外是引用不到的,也就是说作用域只在for的花括号里

同一个作用域下不能声明相同名字的变量,否则会报编译错误。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值