勤奋学习java,有个关于StringTokenizer的问题
所在版块:求学狮城 发贴时间:2003-04-28 11:59

用户信息
复制本帖HTML代码
高亮: 今天贴 X 昨天贴 X 前天贴 X 
import java.util.*;
class MyTest
{
public static void main(String[] args)
{
String MyString="I love you. a b c s e f g ";
System.out.println(my1(MyString,7));
System.out.println(my1(MyString,2));

}
public static String my1(String s, int k)
{
StringTokenizer st=new StringTokenizer(s," \t\n\r,.;:");
String f=null;
for(int i=0;i<=st.countTokens();i++)
{
if(i==k)
f=st.nextToken();
st.nextToken();

}
return f;
}
}
-----------------
有这么个问题
System.out.println(my1(MyString,7));的时候后面输出的是null
我自己认为是st.countTokens()出了问题
换成 st.hasMoreTokens()以后得到解决
但是我在里面加了System.out.println(st.countTokens());输出是正确的10。循环应该不会出问题
不知道为什么会这样>.<
哪个学长教教我
谢谢了先
.
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!

 相关帖子 我要回复↙ ↗回到正文
勤奋学习java,有个关于StringTokenizer的问题 夜不归宿   (815 bytes , 589reads )
关于debug duck   (510 bytes , 221reads )
CS1102 的tutor :D 谢谢duck 夜不归宿   (0 bytes , 195reads )
Come in-->> cigar   (201 bytes , 230reads )
谢谢了,那个原来是变量>.< 夜不归宿   (0 bytes , 164reads )
>>>>> 辰星   (74 bytes , 236reads )
说清楚点,加false什么意思>.< 夜不归宿   (0 bytes , 191reads )
加false的意思是 辰星   (233 bytes , 196reads )
啊。好像 辰星   (29 bytes , 175reads )
小伙子勤奋啊! 棋主   (390 bytes , 311reads )
谢谢了:D说的真清楚. 夜不归宿   (21 bytes , 201reads )
还有附加问一个 夜不归宿   (22 bytes , 191reads )
>>>>>> 辰星   (23 bytes , 153reads )
....我想看看程序运行的过程,一步一步的debug 夜不归宿   (0 bytes , 310reads )
>>>>>>>> 辰星   (114 bytes , 176reads )