分配内存空间,关于StringTokenizer,感兴趣的进来讨论一下

ruby0531 2004-01-30 06:01:48
最近有一个程序需要

StringTokenizer token=new StringTokenizer("aa,bb,cc,dd,xx,yy,zz",",");
while(token.hasMoreElements()){
token.nextToken();
}
***
token.nextToken()
***就抛错了java.util.NoSuchElementException
如果需要token再重新循环一次元素的话,就必须再重新创建一个
token=new StringTokenizer("aa,bb,cc,dd,xx,yy,zz",",");
token.nextToken();
这样的话,就是说重新给token分配了一个内存地址空间。如果再循环的话,效率低下的很。

请教有没有更好的方法,使得token能够重新循环元素。
...全文
33 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ruby0531 2004-01-31
  • 打赏
  • 举报
回复
我用的JProbe Memory Debugger做的。
高手能不能让token循环元素完了以后,还能不能再循环一边
dytsoft 2004-01-30
  • 打赏
  • 举报
回复
你是如何统计内存和效率的呢?

我感觉这样是正确的!
stonecsdn 2004-01-30
  • 打赏
  • 举报
回复
不明白你的意思,下面是CSTreeBean里的,不知是否有用。
private String[] csvToArray(String csv) {

StringTokenizer st = new StringTokenizer(csv, ",");
String[] buf = new String[st.countTokens()];

int i = 0;
while (st.hasMoreTokens())
buf[i++] = st.nextToken();

return buf;
}

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧