String switchString = e.getActionComand();
switch (switchString) {
问题的来源就是这里
switch (switchString) {
问题的来源就是这里
解决方案 »
- 接口和继承
- 新手求助
- java新手的问题
- 大家来讨论一下java的画线函数
- 在JAVA web start中,在文本条 文本框中输入中文时,弹出的输入框又笨又大又是双层的,难看死了
- 我要比较 object[1][0] 和 10 的大小,怎么做呢?
- 在一个JFrame中想布局左边的panel为640X480大小,右边的Panel为150X480,要怎么布局合适?
- 不想用数据库,想对文件内容,进行快速读取\查找
- 关于tomcat
- 请问java中的事件监听是怎么回事?怎样使用她?
- java问题请教
- MyEclipse调试方式启动tomcat问题,急!! ,各内存设置都试过了,一启动MyEclipse就死了,高手前来帮忙!
(1)枚举限制太大,要事先定义好所有的String常量。对于一些运行时才知道结果的程序不现实。(2)hashCode理论上可以,这种方法是想把String转换成int类型以应付switch的要求,但实际不可行。
因为case语句中需要常量表达式,下面的写法编译都通过不了:
String str="张";
switch(str.hashCode()){
case "张".hashCode() : .... ;break;
case "李".hashCode() : .... ;break;
.....
};所以,我认为枚举方法是唯一可行的,至少我现在还不知道有没有其他的办法。关注中....
JAVA也只支持LONG类型以下的原始类型
但是要等好久.