狂奔的瘦子 发表于 2013-3-24 12:18:05

Java7新特性------(一)

本帖最后由 狂奔的瘦子 于 2013-3-24 12:37 编辑

嘛...众所周知,java一直以来在switch的条件里只支持与整数兼容的类型(如char,byte,short,int和Character,Byte,Short,Integer)和枚举类型,这样导致开发的时候无比的蛋疼,尤其是遇到根据字符串不同进行选择的语句...大致就是要么把字符串通过各种手段转成int类型,要么就是用各种的if else if,多写了很多的代码......
不过现在解脱了...sun公司终于发现了众多程序员的怨念...在Java7里面让switch支持了String类型的表达式!!我们终于解放了有木有!!!为了根据字符串选择不用写那么多代码了有木有!!!!以后写代码完全可以这样了,如下:
public class TestSwitch{
      public void show(String name){
                switch(name){
                        case "Whisper1166":
                              System.out.println(name + "是坏人");
                              break;
                        case "Mr_Alex":
                              System.out.println(name + "是笨笨");
                              break;
                        case "狂奔的瘦子":
                              System.out.println(name + "是聪明的大好人");
                              break;
                }
      }
}

有木有简单了不少!!!
同样的...在使用新的switch时要注意几点:
1.表达式的值不能为null,也就是说你的字符串不能是空对象!!但是可以是空字符串
2.在case语句中也不能有null
3.case子句中的值是不能重复的...包括Unicode转义字符,例如,男和\u7537这两个分别做成同一switch的子句值时,会编译错误

以上.就是java新特性中关于switch改变的介绍.....@Whisper1166 @Mr_Alex

Mr_Alex 发表于 2013-3-24 12:34:43

学习了 ,不过现在还是用的JDK1.5和1.6 哭 @86#

狂奔的瘦子 发表于 2013-3-24 12:36:22

Mr_Alex 发表于 2013-3-24 12:34 static/image/common/back.gif
学习了 ,不过现在还是用的JDK1.5和1.6 哭

1.5用的也少了...现在基本都用1.6~~~注解很强大~~~~

foodszhu 发表于 2013-3-24 12:45:03

。。。。。不太用java。。。。不过一直很少用switch语句的。。。因为有时候错误会很多。。。虽然可能性能差点,但是if-else明显更清晰

moxiagy 发表于 2013-3-24 12:49:55

路过学习了,虽然在用1.7不过完全没研究新特性

狂奔的瘦子 发表于 2013-3-24 12:52:56

moxiagy 发表于 2013-3-24 12:49 static/image/common/back.gif
路过学习了,虽然在用1.7不过完全没研究新特性

如果不用新特性的话.....那用不用1.7都没啥区别

前原圭一 发表于 2013-3-24 23:11:57

←u←

狂奔的瘦子 发表于 2013-3-26 14:38:45

过几天更新第二部...哇咔咔.我要写个连戏剧

释梦 发表于 2015-10-18 10:28:21

这里真好!
页: [1]
查看完整版本: Java7新特性------(一)