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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

之前一直都看视频,视频讲的用的6,刚换了7,原来switch语句后面的控制表达式除了能支持的byte、short、char、int 等四个整数类型和枚举类型,还能支持String类型的变量或表达式-----只能是java.lang.String类型,不能使StringBuffer或StringBuilder这两种字符串类型。

                String season ="夏天";
                switch (season)
                {
                        case "春天":
                                System.out.println("春天");
                                break;
                        case "夏天":
                                System.out.println("夏天");
                                break;
                        case "秋天":
                                System.out.println("秋天");
                                break;
                        case "冬天":
                                System.out.println("冬天");
                                break;
                        default:
                                System.out.println("季节输入错误");

               
                }

评分

参与人数 1技术分 +1 收起 理由
黄奕豪 + 1 追求创新,不错~~

查看全部评分

3 个回复

倒序浏览
抱歉!你这是错误的哈!貌似现在还不可以支持吧!我用你代码编译
switchdemo1.java:5: 不兼容的类型
找到: java.lang.String
需要: int
                 switch (season)
                         ^
1 错误
我郁闷 这样的垃圾贴也发1只要代码试验一下就知道 了啊你就可以看到这个不是支持的
回复 使用道具 举报
kevindavid 发表于 2012-6-9 22:44
抱歉!你这是错误的哈!貌似现在还不可以支持吧!我用你代码编译
switchdemo1.java:5: 不兼容的类型
找到: ...

开始查了下JDK 7 是支持这样的情况的  oracle都说支持啦 详见 http://docs.oracle.com/javase/7/docs/technotes/guides/language/strings-switch.html   好好看下吧。只能说我们学的太落后了,学校还是用java2,不能草率的下结论,得先看看官方的说法。
回复 使用道具 举报
确实新特性 已经支持字符串格式了,呵呵  现在技术都更新的太快了 我们要跟上节奏。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马