goldrain

金色雨点

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  37 随笔 :: 2 文章 :: 239 评论 :: 0 Trackbacks

一个很常见的需求,可能很多人遇见过。
遍历list中的对象,抽取出对象的两个属性组合成如下格式的字符串:
20GPX2,40GPX1

下面是我的实现,也想了其他很多方法,想不出更简单的代码实现了赫

public  String getFclsInfo( List<JackerSeaJobFcl> list ){
  StringBuffer sb = new StringBuffer();
  if(list!=null)
   for (JackerSeaJobFcl fcl : list) {
    if(sb.length()>0) sb.append(",");
    sb.append(fcl.getBoxType());
    sb.append("X");
    sb.append(fcl.getBoxNumber());
   }
  return sb.toString();
}

posted on 2007-03-02 10:14 goldrain 阅读(2433) 评论(9)  编辑  收藏

评论

# re: 一个常见的字符串拼接需求,怎么实现代码最简单 2007-03-02 11:36 L
应该是最简单的方式了。。  回复  更多评论
  

# re: 一个常见的字符串拼接需求,怎么实现代码最简单 2007-03-02 11:41 DoubleHeart
直接把List toString,然后replaceAll(":", "X")不就是了。  回复  更多评论
  

# re: 一个常见的字符串拼接需求,怎么实现代码最简单 2007-03-02 11:45 goldrain
@DoubleHeart
可能是我没描述清楚:
JackerSeaJobFcl是一个带多个属性的类而已,只是抽取其中两个属性做拼接
  回复  更多评论
  

# re: 一个常见的字符串拼接需求,怎么实现代码最简单 2007-03-02 11:59 DoubleHeart
也就是说将你不需要的字符串替换成"X"跟""就行了。  回复  更多评论
  

# re: 一个常见的字符串拼接需求,怎么实现代码最简单 2007-03-02 12:02 DoubleHeart
也可以用oro来实现正则抽取、替换。
也就是说只要对toString出来的那一条字符串进行操作就行了。  回复  更多评论
  

# re: 一个常见的字符串拼接需求,怎么实现代码最简单 2007-03-02 12:23 goldrain
@DoubleHeart
你的思路我知道的,但要实现起来并不简单
贴出你的代码来吧,要运行通过的哦  回复  更多评论
  

# re: 一个常见的字符串拼接需求,怎么实现代码最简单 2007-03-02 12:57 千万
稍微改动下
public String getFclsInfo( List<JackerSeaJobFcl> list ){
StringBuffer sb = new StringBuffer();
if(list!=null)
for (JackerSeaJobFcl fcl : list) {
sb.append(",");
sb.append(fcl.getBoxType());
sb.append("X");
sb.append(fcl.getBoxNumber());
}
if(sb.length()>1) {return sb.subString(1)} //判断挪到这里
return sb.toString();
}  回复  更多评论
  

# re: 一个常见的字符串拼接需求,怎么实现代码最简单 2007-03-02 13:01 goldrain
@千万
改的很有道理,在循环次数较多时,性能会更高.
:)  回复  更多评论
  

# re: 一个常见的字符串拼接需求,怎么实现代码最简单[未登录] 2007-03-02 19:57 jini
@千万

和“千万”的一样,在循环中判断是否加","是没有必要的  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: