我在列表中有一组非常大的字符串 URL 模式,例如 {http://www.imdb.com, http://www.amazon.com ,...}。
我得到这样的输入 URL:
http://www.imdb.com/title/tt1409024/
对于我的应用程序来说,这个 URL 实际上是从http://www.imdb.com形成的,所以这两个应该是相等的true
。
为了实现这一点,我可以从输入 URL 中提取基本 URL:
http://www.imdb.com/title/tt1409024/ => http://www.imdb.com
现在我需要将此提取的 URL 与 URL 的主列表进行比较,如果找到匹配项,则将基本 URL 存储在数据库中。因此,本质上,对于我的每个输入(基本)URL,我都在主列表中为提取的 URL 寻找匹配项,如果找到匹配项,我会将输入(基本)URL 存储在数据库中。
为了实现相等/匹配逻辑,我有两种可能的解决方案。请权衡哪个更好:
- 将 URL 的主列表放入数组列表中,并使用数组列表
contains
方法 - 将主列表放入数据库中,并使用查询来检查输入的 url
谁能告诉我哪一个在性能方面会更好?