【发布时间】:2020-02-06 15:25:32
【问题描述】:
嘿,我正在使用 Blue J,我必须使用 StringTokenizer 方法来查找单词的频率。 我很容易做到这一点,但我想不出一种不打印重复单词的方法。
import java.util.*;
class freq_wrd
{
public static void main()
{ Scanner ob=new Scanner(System.in);
System.out.println("Enter String to read");
String str = ob.nextLine();
int i,j;
StringTokenizer st = new StringTokenizer(str,"!@#$=-%^&*()_+ |}{][|<>?>,./:';");
int n = st.countTokens();
String a[]=new String[n];
for(i=0;i<n;i++)
{
a[i]=st.nextToken();
}
for(i=0;i<n;i++)
{ int freq=0;
for(j=0;j<n;j++)
{
if(a[i].equals(a[j]))
freq+=1;
}
System.out.println(a[i] + " = "+freq);
}
}
}
【问题讨论】:
-
你必须保留一个列表或一个独特的非重新获得令牌的地图。