相关疑难解决方法(0)

HashSet和HashMap之间的区别?

除了HashSet不允许重复值的事实之外,HashMap和之间有什么区别HashSet

我的意思是实施明智?它有点模糊,因为它们都使用哈希表来存储值.

java collections hashmap hashset

160
推荐指数
7
解决办法
23万
查看次数

散列集和数组列表性能

我已经实现了一种方法,它只是循环一组包含许多不同模块数据的CSV文件.然后将'moduleName'添加到hashSet中.(代码如下所示)

我使用了一个hashSet,因为它保证不会插入重复项而不是ArrayList,它必须使用contains()方法并遍历列表以检查它是否已存在.

我相信使用哈希集具有比数组列表更好的性能.我说的是正确的吗?

还有,有人可以向我解释一下:

  1. 如果使用,如何处理每个数据结构的性能?
  2. 使用big-O表示法的复杂性是多少?

    HashSet<String> modulesUploaded = new HashSet<String>();
    
    for (File f: marksheetFiles){
        try {
            csvFileReader = new CSVFileReader(f);
            csvReader = csvFileReader.readFile();
            csvReader.readHeaders();
    
            while(csvReader.readRecord()){
                String moduleName = csvReader.get("Module");
    
                if (!moduleName.isEmpty()){
                    modulesUploaded.add(moduleName);
                }
            }
    
        } catch (IOException e) {
            e.printStackTrace();
        }
    
        csvReader.close();
    }
    return modulesUploaded; 
    
    Run Code Online (Sandbox Code Playgroud)

    }

java algorithm performance arraylist hashset

36
推荐指数
4
解决办法
5万
查看次数