文档详情

Java中的Switch对整型、字符型、字符串.pdf

发布:2017-05-24约4.46千字共5页下载文档
文本预览下载声明
Java中的Switch对整型、字符型、字符串型的具体实现细节 Java 7中 ,sw it ch的参数可以是St ring类型了 ,这对我们来说是一个很方便的改进。到目前为 止sw it ch支 这样几种数据类型 :byt e sho rt int char St ring 。但是 ,作为一个程序员我们不仅要 知道他有多么好用 ,还要知道它是如何实现的 ,w it ch对整型的支 是怎么实现的呢 ?对字符型是 怎么实现的呢 ?St ring类型呢 ?有一点Java开发经验的人这个时候都会猜测sw it ch对St ring的支 是使用equals()方法和hashcode()方法。那么到底是不是这两个方法呢 ?接下来我们就看 一下 ,sw it ch到底是如何实现的。 一、switch对整型支持的实现 下面是一段很简单的Java代码 ,定义一个int 型变量a ,然后使用sw it ch语句进行判断。执行 这段代码输出内容为5 ,那么我们将下面这段代码反编译 ,看看他到底是怎么实现的。 public class sw it chDemo Int { public st at ic vo id main(St ring ] args) { int a = 5; sw it ch (a) { case 1: Syst em.o ut .print ln(1); break; case 5: Syst em.o ut .print ln(5); break; def ault : break; } } } //o ut put 5 反编译后的代码如下 : public class sw it chDemo Int { 更多精彩攻略访问 1 public sw it chDemo Int () { } public st at ic vo id main(St ring args ]) { int a = 5; sw it ch(a) { case 1: // \001 Syst em.o ut .print ln(1); break; case 5: // \005 Syst em.o ut .print ln(5); break; } } } 我们发现 ,反编译后的代码和之前的代码比较除了多了两行注释以外没有任何区别 ,那么我 们就知道 ,sw it ch对int 的判断是直接比较整数的值。 二、switch对字符型支持的实现 直接上代码 : public class sw it chDemo Int { public st at ic vo id main(St ring ] args) { char a = b; sw it ch (a) { case a: Syst em.o ut .print ln(a); break; 更多精彩攻略访问 2 case b: Syst em.o ut .print ln(b); break; def ault : break; } } } 编译后的代码如下 : `public class sw it chDemo Char public class sw it chDemo Char
显示全部
相似文档