我有一个具有以下构造函数和属性的基因类
public class Gene implements Comparable<Gene> {
String id;
String name;
//Constructor
public Gene(String id, String name) {
this.id = id;
this.name = name;
}
在另一个课程中,我想知道两组中哪些基因相似,它们的相似性基于基因名称。
listOfAllGenes.retainAll(strain.getGenes());
我应该采用哪种方法来比较基因名称的两组基因?
感谢。
答案 0 :(得分:0)
你可以做这样的事情
在Gene类
中添加name的getter方法public String getName() {
return name;
}
然后在另一个类中使用类似于此
的逻辑ArrayList<Gene> matchingGenes = new ArrayList<>();
for (Gene gene1 : genelist1) {
for (Gene gene2 : genelist2) {
if gene1.getName().equals(gene2.getName) {
matchingGenes.add(gene1);
matchingGenes.add(gene2);
}
}
}
这将为您提供一个列表,其中包含与其他列表中的Gene共享名称的每个Gene的对。