我有一个名为test5的文本文件,有4个单词。我需要将这四个单词传递给contVal和contVal2函数。当我执行下面的代码时,第一个和第三个单词转到函数contVal,第二个和第四个单词转到contVal2。有什么方法可以将所有四个单词都传递给这两个函数吗?
String a = "D:/test5.txt" ;
String abc = readFile(a);
StringTokenizer st = new StringTokenizer(abc);
float cv1 = 1;
float cv4 =1;
while (st.hasMoreTokens())
{
float cv0 = contVal(a1,st.nextToken());
cv1 = cv0*cv1;
float cv3 = contVal2(a1,st.nextToken());
cv4=cv3*cv4;
}
答案 0 :(得分:3)
每次拨打st.nextToken()
都会消耗另一个令牌。因此,每种方法只获得一半的令牌。
将每个标记存储在变量中,然后将其传递给方法:
while (st.hasMoreTokens())
{
String token = st.nextToken();
float cv0 = contVal(a1,token);
cv1 = cv0*cv1;
float cv3 = contVal2(a1,token);
cv4=cv3*cv4;
}