A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 范龙波 高级黑马   /  2013-3-31 06:20  /  2236 人查看  /  14 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 范龙波 于 2013-4-4 23:22 编辑

class XingQi
{
        public static void main(String[] args)
        {
                int x=3;
                if(x==1)
                {
                        System.out.println("星期一");
                }
                else if(x==2)
                {
                        System.out.println("星期二");
                }
                else if(x==3)
                {
                        System.out.println("星期三");
                }
                else if(x==4)
                {
                        System.out.println("星期四");
                }
                else if(x==5 ) //从这开始出现的问题我个人感觉是数字5出现了问题,只要把上面的else if(x==4) 复制到这在把4改成5问题就没有了,可是我有点不明白这是为什么?上面和下面不都一样吗
                {
                        System.out.println("星期五");
                }
                else if(x==6)
                {
                        System.out.println("星期六");
                }
                else if(x==7)
                {
                        System.out.println("星期日");
                }
                else
                {
                        System.out.println("NONO");       //这也提示出现问题说非法的类型开始,求解。谢谢了。
                }
        }
}

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1

查看全部评分

14 个回复

正序浏览
如果问题未解决,请继续追问,如果没有问题了,请将帖子分类 改为“已解决”,谢谢
回复 使用道具 举报
楼上正解,干吗不用switch呢
回复 使用道具 举报
许兵兵 发表于 2013-3-31 16:44
楼上两位说的很对,我就不说问题了,不过我可以给你点建议就是:如果你用的是搜狗输入法,你可以把出入法设置成 ...

小经验一枚,很好!
回复 使用道具 举报
最后一句
else
{
      system.out.println("nono");
}
我也出现了和你一样的问题。

不过我把else换成if(num>7);

就解决了。。
回复 使用道具 举报
要学会逐一排查,如果你星期一就已经开始错误了,后面都是复制的话,基本都错误。

这种情况不要慌张,就从第一个错误开始,看看错误提示是什么。如果仅仅是报的格式错误,那很好解决,后面的全部注释掉,就先把第一个错误解决了,后面如果是同样的错误,就迎刃而解了。还是要细心,也要有耐心,{:soso_e113:}
回复 使用道具 举报
恩,开始编写时也经常犯这个错误,有时要注意使用的是否是在英文状态下书写的
回复 使用道具 举报
陈进 中级黑马 2013-3-31 23:12:21
9#
都是输入法惹的祸哦,,
回复 使用道具 举报
谢谢明白了,这个问题挺容易犯啊。
回复 使用道具 举报
周志伟 黑马帝 2013-3-31 19:47:37
7#
学习了。
回复 使用道具 举报
写代码的时候别用输入法嘛,一些符号问题就是让人头疼。

看半天,我这没错啊,就是符号格式问题。   细节 细节
回复 使用道具 举报
楼上两位说的很对,我就不说问题了,不过我可以给你点建议就是:如果你用的是搜狗输入法,你可以把出入法设置成不管中英文都用英文标点符号,这样就不容易错了,毕竟我们平时写中文的时候,标点符号用的不多,而且,写中文用英文的标点符号也差不了多少!

未命名.jpg (81.06 KB, 下载次数: 16)

未命名.jpg

点评

非常感谢,搜狗输入法还有这个功能啊,太谢谢了,最近总是在为中英文切换痛苦来着  发表于 2013-4-2 13:22

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1 很给力!

查看全部评分

回复 使用道具 举报
      楼上说的是,以前我也犯过这种错误。你的else if(x==5),后面的括号是在中文状态下输入的,可以看的很清楚,由于你后面都是复制这个语句改的,因此都会出现同样的错误。将后面的括号改下就ok了!
    这个问题大家都很容易犯的,即使是高手也会犯,这种问题很难避免。这就要求我们熟悉编译出错后给出的提示信息了,以后见到类似的问题可以一眼看出来就行了!建议:多写代码,多看错误提示信息,多总结错误!这样才是问题根本的解决办法。

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
打代码的时候尽量不要开输入法  假如要输入文字 等后期打完代码一起输入 或者每次输入完都关掉  
除非你已经能分辨出两种标点的不同了“”:;,。《》【】()和"":;,.<>[]()
这些就是常用的标点符号了  你自己看一下的 前面是中文输入法  后面是标准的。
回复 使用道具 举报

  1. class java0331d1
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 int x=3;
  6.                 if(x==1)
  7.                 {
  8.                         System.out.println("星期一");
  9.                 }
  10.                 else if(x==2)
  11.                 {
  12.                         System.out.println("星期二");
  13.                 }
  14.                 else if(x==3)
  15.                 {
  16.                         System.out.println("星期三");
  17.                 }
  18.                 else if(x==4)
  19.                 {
  20.                         System.out.println("星期四");
  21.                 }
  22.                 else if(x==5)//从这开始出现的问题我个人感觉是数字5出现了问题,只要把上面的else if(x==4) 复制到这在把4改成5问题就没有了,可是我有点不明白这是为什么?上面和下面不都一样吗
  23.                 {
  24.                         System.out.println("星期五");
  25.                 }
  26.                 else if(x==6)
  27.                 {
  28.                         System.out.println("星期六");
  29.                 }
  30.                 else if(x==7)
  31.                 {
  32.                         System.out.println("星期日");
  33.                 }
  34.                 else
  35.                 {
  36.                         System.out.println("NONO");      //这也提示出现问题说非法的类型开始,求解。谢谢了。
  37.                 }
  38.         }
  39. }
复制代码
很初级的错误 我已经也是常犯

你5后面的括号不是英文标点符号

而是中文输入发打的  5 6 7都是

应该是()  你打成()   你看有区别吗

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马