从Python移植到Java:寻找数组搜索操作的快速实现

时间:2016-01-13 19:21:34

标签: java python arrays list arraylist

我正在将一些Python代码移植到Java中,需要找到以下Python操作的有效实现:

sum([x in lstLong for x in lstShort])

其中lstLonglstShort是字符串列表。所以我在这里计算lstShortlstLong出现了多少元素。在Java实现中,这两个都是String[]。什么是计算这笔钱的最快方法?

一个更普遍的问题是,是否有任何通用的写作准则"快速等价物"在Java中的Python列表理解操作如上所述。我最感兴趣的是String s的数组/列表,以防它使答案更容易。

1 个答案:

答案 0 :(得分:0)

如果您将两者都转换为ArrayList<String>,则可以使用

lstLong.retainAll(lstShort).size();

您可以使用

进行转换
new ArrayList<String>(Arrays.asList(var));