以下代码打星号处编译错误,请帮忙看看 还有,case "Integer"下一行也有同样错误 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 switch 语句的控制表达式和各case分支的标签值必须被指定为byte,short,char或者int型 看看报错信息 : incompatible typesfound : java.lang.Stringrequired: int switch(str) { ..............可见是只能用int了 Java中的switch只能应用与int(当然可以隐式转换为int的其他类型入byte,short,char也可以),所以boolean,long和String都是不能用地 北极星说得比较全面。如果是只是完成段子只中的功能(只有两种类型的话),建议用判断语句。这样改if ((al.get(i).getClass().getName()).equals("String")) { cstmt.setString(i,(String)al.get(i));}else{ cstmt.setInt(i,al.get(i)));} 为什么我接收端没有受到广播数据包? JAVA怎么检测程序当前运行的系统是linux还是windows? 初学java,照着书调试了一个"基于telnet的服务器/客乎端(c/s)java聊天室程序",放出来大家共享!! 带星的用户帮我解决这些关键字 JAVA中的指针,引用及对象的clone 字符串转换成对象的问题 初学者问题:Applet中怎么创建自己的类 哪里有JBuider7.0的教程,给一个 一个新手2天没有解决的java问题 求解释这个正则表达式 字符界面下不能运行 文件打印问题,高手求教
incompatible types
found : java.lang.String
required: int
switch(str) { ..............
可见是只能用int了
如果是只是完成段子只中的功能(只有两种类型的话),建议用判断语句。这样改
if ((al.get(i).getClass().getName()).equals("String")) {
cstmt.setString(i,(String)al.get(i));
}else{
cstmt.setInt(i,al.get(i)));
}