黑马程序员技术交流社区

标题: 求助if...else语句 [打印本页]

作者: 曹思敏    时间: 2013-5-29 10:18
标题: 求助if...else语句
本帖最后由 曹思敏 于 2013-6-1 08:55 编辑

//根据用户自定义不同;打印出相应的星期英文。
public class Week
{
public static void main(String args[])
    {
     int = x = 1;
   
     if(x==1);
     
     System.out.println("Monday");
     
     else if(num=2);
     
     System.out.println("Tuesday");
     
     else if(num=3);
     
      System.out.println("Wednesday");
     
     else if(num=4);
     
     System.out.println("Thursday");
     
     else if(num=5);
     
     System.out.println("Friday");
     
     else if(num=6);
     
     System.out.println("Saturday");
     
     else if(num=7);
     System.out.println("Sunday");
     else
     System.out.println("Empty");
    }
}
编译错误;出现如图(1-1)

求解答。谢谢~!

作者: 翟宝海    时间: 2013-5-29 10:32
本帖最后由 翟宝海 于 2013-5-29 16:43 编辑
  1. class Week
  2. {
  3. public static void main(String args[])
  4.      {
  5.       int x = 1;//int = x = 1; 当然不是语句了,改为 int x = 1;
  6.      
  7.       if(x==1)
  8.       
  9.       System.out.println("Monday");
  10.       
  11.       else if(x==2)//从这句之后的num都改为x,你并没有定义变量num,
  12.       
  13.       System.out.println("Tuesday");
  14.       
  15.       else if(x==3)
  16.       
  17.        System.out.println("Wednesday");
  18.       
  19.       else if(x==4)
  20.       
  21.       System.out.println("Thursday");
  22.       
  23.       else if(x==5)
  24.       
  25.       System.out.println("Friday");
  26.       
  27.       else if(x==6)
  28.       
  29.       System.out.println("Saturday");
  30.       
  31.       else if(x==7)
  32.       System.out.println("Sunday");
  33.       else
  34.       System.out.println("Empty");
  35.      }
  36. }
复制代码
在Java中,“;”代表语句的结束,if判断语句的三种格式是:
1、        if(条件表达式)  {执行语句;}
2、        if(条件表达式)  {执行语句;} else {执行语句;}
3、        if(条件表达式)  {执行语句;} else if {执行语句;} ……else {执行语句;}
if()后面不能直接跟上 ;

                                                                                 
作者: 黄炳期    时间: 2013-5-29 10:49

首先,程序上下的变量没对应,
       每条if后面多了不应该有的;
       else if()里的条件表达式,你写的是赋值,而不是判断值,应该用两个=。
下面是我修改好的代码,运行成功,希望能帮到你。

作者: 曹思敏    时间: 2013-5-29 10:56
Thank you;You are better man.
作者: 曹思敏    时间: 2013-5-29 11:37
public class Week
{
public static void main(String args[])
{
     int x = 6;
   
     if(x==1)
     
     System.out.println("Monday");
     
     else if(x==2);
     
     System.out.println("Tuesday");
     
     else if(x==3);
     
      System.out.println("Wednesday");
     
     else if(x==4);
     
     System.out.println("Thursday");
     
     else if(x==5);
     
     System.out.println("Friday");
     
     else if(x==6);
     
     System.out.println("Saturday");
     
     else if(x==7);
     System.out.println("Sunday");
     
     else
     
     System.out.println("Empty");
   
}
}
改了之后;编译还是错误;如图1-2; 求解答!
作者: 神之梦    时间: 2013-5-29 11:48
曹思敏 发表于 2013-5-29 11:37
public class Week
{
public static void main(String args[])

楼主请仔细看1楼、2楼给你的解答,你的问题别人已经给指出了
姑且说你这是粗心吧
提示下,你的分号
作者: 殇_心。    时间: 2013-5-29 16:39
如果问题已解决,请及时修改分类,否则继续提问,谢谢合作!
作者: 黄炳期    时间: 2013-5-29 16:51
曹思敏 发表于 2013-5-29 11:37
public class Week
{
public static void main(String args[])

认真看看我给你做的批注,所有的事儿,那都不是事
作者: 曹思敏    时间: 2013-5-29 17:45
谢谢大家;万分感谢。




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