java enum short,Java7版本: switch语句支持String、Enum类型(JDK1.5)与原来byte、short、char和int....

该段Java代码创建了一个名为Test的类,继承自Object。代码中定义了一个构造函数和一个test方法,该方法接收一个String参数。test方法内对字符串的hashCode进行比较,并根据不同的哈希值执行不同的lookupswitch分支,分别检查字符串是否等于'abc'或'def'。如果匹配,执行相应的逻辑,包括打印输出。此代码涉及字符串处理、条件判断及控制流程操作。
摘要由CSDN通过智能技术生成

Compiled from "Test.java"

public class Test extends java.lang.Object{

public Test();

Code:

0:     aload_0

1:     invokespecial     #1; //Method java/lang/Object."":()V

4:     return

public void test(java.lang.String);

Code:

0:     aload_1

1:     astore_2

2:     iconst_m1

3:     istore_3

4:     aload_2

5:     invokevirtual     #2; //Method java/lang/String.hashCode:()I

8:     lookupswitch{ //2

96354: 36;

99333: 50;

default: 61 }

36:     aload_2

37:     ldc     #3; //String abc

39:     invokevirtual     #4; //Method java/lang/String.equals:(Ljava/lang/Object;)Z

42:     ifeq     61

45:     iconst_0

46:     istore_3

47:     goto     61

50:     aload_2

51:     ldc     #5; //String def

53:     invokevirtual     #4; //Method java/lang/String.equals:(Ljava/lang/Object;)Z

56:     ifeq     61

59:     iconst_1

60:     istore_3

61:     iload_3

62:     lookupswitch{ //2

0: 88;

1: 99;

default: 110 }

88:     getstatic     #6; //Field java/lang/System.out:Ljava/io/PrintStream;

91:     ldc     #3; //String abc

93:     invokevirtual     #7; //Method java/io/PrintStream.println:(Ljava/lang/String;)V

96:     goto     118

99:     getstatic     #6; //Field java/lang/System.out:Ljava/io/PrintStream;

102:     ldc     #5; //String def

104:     invokevirtual     #7; //Method java/io/PrintStream.println:(Ljava/lang/String;)V

107:     goto     118

110:     getstatic     #6; //Field java/lang/System.out:Ljava/io/PrintStream;

113:     ldc     #8; //String default

115:     invokevirtual     #7; //Method java/io/PrintStream.println:(Ljava/lang/String;)V

118:     return

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值