用作字典的小型java程序
我想做一个像字典一样工作的小代码,看看我想怎么做用作字典的小型java程序,java,arrays,Java,Arrays,我想做一个像字典一样工作的小代码,看看我想怎么做 要使用两个数组1表示单词,2表示含义 当程序运行时,我会自动对随机的ENTERD数组进行排序,然后弹出一个JoptopnPane窗口,要求输入单词数组中的单词 当用户输入word并按enter键时,它将在第二个数组中搜索其含义 数组是这样的 String Words[]={"One" , "Two" , "Three", "Four"}; String Meaning[]={"1", "2", "3", "4"}; 我已经对它们进行了排序,在弹
String Words[]={"One" , "Two" , "Three", "Four"};
String Meaning[]={"1", "2", "3", "4"};
我已经对它们进行了排序,在弹出窗口中也做过类似的工作,但不知道如何进行“单词到含义数组的匹配”您需要的简单操作
for(int i=0;i<Meaning.length();i++)
if(Meaning[i].equals(word from joptionpane))
{
/////////////--- ur code................
}
for(inti=0;i您应该创建一个Map
来存储单词及其含义的映射
Map<String, String> wordMap = new HashMap<String, String>() {
{
put("One", "1");
put("Two", "2");
put("Three", "3");
put("Four", "4");
}
};
然后对于一个单词-“一”,你可以得到如下含义:
String wordMeaning = wordMap.get("One");
此方法不需要对每个单词的数组进行迭代。理想情况下,字典
应该始终是从单词
到其映射
的映射,以便搜索时间为O(1)
你可以使用映射来存储单词及其含义的映射。所有的大写字母都会引起注意,这是真的。但通常是负面的注意。尝试映射来存储字符串与字符串列表。如果仅仅因为大写字母而得到-3,那真是太神奇了。根据我的场景,这一个看起来更好。理想情况下,字典搜索应该总是O(1)
。如果将其实现为两个并行数组,则字典
的全部含义将丢失,搜索时间将为O(n)
。它应实现为单词
及其对应的含义
的映射
,以便搜索时间为O(1)
String wordMeaning = wordMap.get("One");