黑马程序员技术交流社区

标题: 这里面的代码哪里错误? [打印本页]

作者: 惠晖    时间: 2012-8-10 00:35
标题: 这里面的代码哪里错误?
class Demo
{
         public static void main (String [] args)
         {

//需求:指定一个月份,打印出其所在的季节
        int x=4;
        if(x>12 ||x<3);
                System.out.println(x+"不存在的月份");
        else if(x>=3 && x<=5);
                System.out.println(x+"春季");
        else if(x>=6 && x<=9);
                System.out.println(x+"夏季");
        else if(x>=9 && x<=11);
                System.out.println(x+"秋季");
        else
                System.out.println(x+"冬季");
                        
         }
}







dos中为什么会出现错误啊D:\java\201288>javac 123.java
123.java:10: "else" 不带有 "if"
        else if(x>=3 && x<=5);
        ^
123.java:12: "else" 不带有 "if"
        else if(x>=6 && x<=9);
        ^
123.java:14: "else" 不带有 "if"
        else if(x>=9 && x<=11);
        ^
123.java:16: "else" 不带有 "if"
        else
        ^
4 错误
作者: 赵俊杰    时间: 2012-8-10 00:43
本帖最后由 赵俊杰 于 2012-8-10 00:45 编辑

public class Demo
{
         public static void main (String [] args)
         {

//需求:指定一个月份,打印出其所在的季节
        int x=4;
        if(x>12 ||x<3)     
         System.out.println(x+"不存在的月份");
        else if(x>=3 && x<=5) //这段代码我改过来了,即是把if(条件)后面的分号";"依次去掉,当然你也可以选择使用"if{}"的格式
                System.out.println(x+"春季");
        else if(x>=6 && x<=9)
                System.out.println(x+"夏季");
        else if(x>=9 && x<=11)
                System.out.println(x+"秋季");
        else
                System.out.println(x+"冬季");
                        
         }
}

作者: 张雪磊    时间: 2012-8-10 00:44
本帖最后由 张雪磊 于 2012-8-10 00:46 编辑

你的if else语句全写错了,if或else if语句格式是
if(){}
else if(){}

你全写成了

if() ; {}
else if() ;{} 这个分号不能加啊


你把下面红色的分号去掉就对了

class Demo
{
         public static void main (String [] args)
         {

//需求:指定一个月份,打印出其所在的季节
        int x=4;
        if(x>12 ||x<3);
                System.out.println(x+"不存在的月份");
        else if(x>=3 && x<=5);
                System.out.println(x+"春季");
        else if(x>=6 && x<=9);
                System.out.println(x+"夏季");
        else if(x>=9 && x<=11);
                System.out.println(x+"秋季");
        else
                System.out.println(x+"冬季");
                        
         }
}





作者: 武鹏玉    时间: 2012-8-10 00:46
要把if条件后面的封号去掉哦
封号代表一句话已结束  
作者: 毛标    时间: 2012-8-10 01:07
class Demo
{
         public static void main (String [] args)
         {

//需求:指定一个月份,打印出其所在的季节
        int x=4;
        if(x>12 ||x<3);
                System.out.println(x+"不存在的月份");
        else if(x>=3 && x<=5);
                System.out.println(x+"春季");
        else if(x>=6 && x<=9);
                System.out.println(x+"夏季");
        else if(x>=9 && x<=11);
                System.out.println(x+"秋季");
        else
                System.out.println(x+"冬季");
                        
         }
}




代码中if()后面的;去掉
因为if的格式是i
f()不加;
在第二行直接写语句


作者: 惠晖    时间: 2012-8-10 08:22
thanks .





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2