一直没用过 增强for循环, 现在 我用用看, 但是我要判断是否有下一个元素存在, 目的是打印词组 , 没到最后一个的时候 中间打印逗号 , 是最后一个元素的话 就不用打印逗号了 , 请问怎么判断呢?
for(HotkeyBean hb:keyal ){
out.print(hb.getKeyword());
}
for(HotkeyBean hb:keyal ){
out.print(hb.getKeyword());
}
解决方案 »
- 求助~~
- ibatis
- J2EE源碼文件如何配置
- 使用weblogic服务器里遇到的问题javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFa
- 怎么得到TOMCAT关闭的通知,或者说进程关闭的通知当然更好.
- 关于在EJB-QL中使用DISTINCT的问题,望赐教!
- 请教大家一个关于 jdbc 连接 oracle 出现的中文问题.
- Acer集团旗下一分公司急需Java人才
- 我的weblogic重装之后,用上三四次后再启动就会出现下面的错误,就大家帮忙看一下。
- 使用Itext 把Html转换成pdf 总是出错
- Structs 错误,请高手来指导下啊
- junit测试不能正常进行,请教哦
String sp = "";
for(HotkeyBean hb:keyal ){
out.print(sp);
out.print(hb.getKeyword());
sp = ",";
}
恩 1楼的很巧妙, 这个循环方法本身没有 类似 hasnext这个方法的吧
String sp = "";
for(HotkeyBean hb:keyal ){
out.print(sp);
out.print(hb.getKeyword());
sp = ",";
}貌似还是在最后一个后面加了个,额
如果能得到keyal中hb的个数。那问题就解决了,我对HotkeyBean不熟
if(i > 0) {
sb.append(',');
}
sb.append(keyal[i].getKeyword());
}
for (HotkeyBean hb : keyal) {
sb.append("," + hb);
}
sb.substring(1);
这样可以满足你的愿望
1、每次循环都要判定。。
2、这样写还不如直接用for(int i)下标呢,就不用自己再去多定义变量了用增强循环只是常规循环中比较简洁的写法。。好了,为什么不循环后将最后一个逗号去掉即可嘛,如有这样一个List:
List <String>list = new ArrayList<String>();
list.add("No1");
list.add("No2");那么要得到通过逗号分隔拼接后的数据,就这样写呗:
public static String getPingStr(List <String>list) {
StringBuilder strBuf = new StringBuilder();
if(list == null || strBuf.size() == 0) {//如果没有数据
return "";
}
for(String str:list) {//拼接数据不要去判定,否则每次循环都要去判定
strBuf.append(str).append(",");
}
return strBuf.deleteCharAt(strBuf.length()-1).toString();//将最后一个逗号去掉即可。
}执行到下面后面肯定就有一个逗号,不晓得是不是你要要的东西。