【发布时间】:2020-10-26 22:39:39
【问题描述】:
我正在尝试制作一本包含单词和定义的字典。我制作了一个二维数组列表来存储单词和每个单词的定义。它看起来像这样:
ArrayList<ArrayList<String>> dictionary = new ArrayList<ArrayList<String>>();
String input = "";
int pos, i = 0;
do{
System.out.print("Enter 'add' to add word and definition, 'remove' to remove a word and its definition, 'change' to change the definition of a word, or 99 to quit: ");
input = sc.nextLine().toLowerCase();
switch(input) {
case "add":
while(dictionary.size() < 1) {
System.out.println("Enter word: ");
input = sc.nextLine();
ArrayList<String> def = new ArrayList<String>();
System.out.println("Enter definition to add: ");
input = sc.nextLine();
dictionary.get(i).add(input);
i++;
}
break;
case "remove":
System.out.print("Enter word to remove: ");
System.out.println(dictionary);
input = sc.nextLine();
ArrayList<String> remove = new ArrayList<String>(Arrays.asList(input));
pos = dictionary.get(remove);
if(dictionary.contains(input)) {
dictionary.remove(pos);
System.out.println("removed " + input);
}
else {
System.out.println("Word is not in dictionary");
}
break;
case "change":
System.out.print("Enter word to change: ");
System.out.println(dictionary);
input = sc.nextLine();
pos = dictionary.indexOf(input);
System.out.println("Enter replacement word: ");
String replacement = sc.nextLine();
//replace word (haven't implemented yet)
break;
我在将新定义添加到数组时遇到问题。我已经尝试了上面的代码,但是每次运行它时它都会返回一个空白数组。
有没有一种方法可以返回包含添加的定义和单词的数组列表?
另外,如何将输入字符串的位置放入字符串数组列表中?
【问题讨论】: