如何在Android数据库中存储arraylist并在需要时检索它

时间:2013-08-26 10:01:01

标签: android database sqlite arraylist

这是我希望将单词存储在arraylist中并将其写入数据库的方法。

public void loadWords(Context context) {

    AssetManager am = context.getAssets();
    wordList = new ArrayList<String>();

    try {

        InputStream inputStream = am.open("english-words-lowercase.txt");
        InputStreamReader inputStreamReader = new InputStreamReader(
                inputStream);
        BufferedReader bufferedReader = new BufferedReader(
                inputStreamReader);

        word = bufferedReader.readLine();

        while(word!=null){
            wordList.add(word);
            word = bufferedReader.readLine();

        }

    } catch (IOException e) {
        e.printStackTrace();
    }


}

所以现在我有一个包含我想要使用的所有单词的ArrayList。如何将其存储到数据库中,以便我可以随时阅读它?我将使用它来验证用户将输入的单词,这是存储单词的最佳方式,还是应该使用HashMap或其他存储技术?谢谢!

1 个答案:

答案 0 :(得分:2)

数组列表可以有重复项.. 所以尽量把它存放在一个集合中。 并将其存储在数据库中。如果你有单词(a,b,a,c,d),请假设.. 这里'a'重复..当你使用arraylist它会进入两次.. 但在设置的情况下,它将不允许重复..我'a'将只输入一次.. 并且你可以随时将它存储在数据库和retreive中

Set<String> set = new HashSet<String>();
set.add("element here");