这几天自学Java,看到个输入密码的事例,网上老师是这么写的:import java.util.*;
public class a2{
public static void main(String[]args){
Scanner in=new Scanner(System.in);
while(true){
System.out.println("请输入密码");
int password=in.nextInt();
if(password!=123456){
continue;
}
break;
}
System.out.println("密码正确");
}
}//把continue和break加入循环语句。挺好,关键是while后跟了个boolean类型进行判断,确实新奇。好!学习了!
但是自己也刚学,想验证下菜鸟的thinking:
import java.util.*;
public class a2{
public static void main(String[]args){
Scanner in=new Scanner(System.in);
System.out.println("请输入密码");
int password=in.nextInt();
while(password!=123456){
System.out.println("请输入密码");
password=in.nextInt();
continue;
}
System.out.println("密码正确");
}
}
反正,能运行的通。那么我又想琢磨是不是可以把while换成if,于是:
import java.util.*;
public class a2{
public static void main(String[]args){
Scanner in=new Scanner(System.in);
System.out.println("请输入密码");
int password=in.nextInt();
if(password!=123456){
System.out.println("请输入密码");
password=in.nextInt();
continue;
}else{
System.out.println("密码正确");
}
}
}
这一换就出问题了,请看编译提示:实在搞不懂,请大神赐教!

解决方案 »

  1.   

    这不是写的很明白吗,你的第二个continue 是在if 语句里面不是在循环语句里面啊
      

  2.   

    continue要用在循环里,它是来跳过循环里后面的内容的
      

  3.   

    continue是用来当满足条件的时候跳出循环继续执行后面的代码,而你这里将while换成if后循环语句就不存在了。修改方法:1,将if换成while。2,将continue去掉。
      

  4.   

    去弄个开发软件 myeclipse 或  idea  刚这个对你刚学来说  代码写的慢  
      

  5.   

    break和continue仅限于循环方法中使用。建议你是用idea或者eclipse,对于语法有很好的提醒
      

  6.   

    continue是用来跳出当前循环的。
      

  7.   

    continue; 放在了loop外部,loop是什么?是循环呗