利用BioJava判别两个成分表或两个标记是否相同

在Biojava中,无论字母表和标记是通过何种方式建立的,相同的字母表和标记都是规范一致的。这意味着如果在不同时间创建的两个DNA字母表(或者是来自那些字母表中的标记)对象是相等的,通过调用.equals()方法和==操作符都可以得到这个结果。这对来自PROTEIN字母表和PROTEIN-TERM字母表或IntergerAlphabet和SubIntegerAlphabet的标记都成立。

上述甚至对于运行在不同虚拟机上的对象都成立(这要感谢JAVA的序列化技术),这意味着Biojava可以进行RMI远程调用(这点对于开发分布式系统非常有好处)。

import org.biojava.bio.symbol.*;
import org.biojava.bio.seq.*;

public class Canonical {
public static void main(String[] args) {

// 通过两种不同的方法得到DNA字母表
Alphabet a1 = DNATools.getDNA();
Alphabet a2 = AlphabetManager.alphabetForName("DNA");

// 判断是否相同
System.out.println("equal: "+ a1.equals(a2));
// 判断是否一致
System.out.println("canonical: "+ (a1 == a2));
}
}
  • 文章来源: 未知。文章来源待更新,请等待。
  • 版权说明: 除非特殊说明,本站文章版权归于文章来源网站或投稿作者。未标记来源文章,请原作者联系管理员更新版权信息

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: