문자열을 문자 bitvalue (사용자 지정)에 따라 해당 비트 벡터로 변환하려고합니다. 저는 게놈 문자열을 다루고 있습니다. 여기에는 A, G, C, T라는 4 문자 만 있습니다. 나는 자바에 다음과 bitvalue와 그들을 대표 할 이제 다음과 같이 그 일을 내가 시도 문자열 "AGGT"다음 해당 bitvalue이어야 01111100. 주어진 문자열을 Java의 비트 벡터로 변환
A = 01
G = 11
C = 10
T = 00
:
BitSet A = new BitSet(2);
BitSet G = new BitSet(2);
BitSet C = new BitSet(2);
BitSet T = new BitSet(2);
A.set(01);
G.set(00);
C.set(11);
T.set(10);
String p = "AGGT";
BitSet bb = new BitSet();
for(int i = 0, n = p.length() ; i < n ; i++) {
bb.set(p.charAt(i))
}
무엇 내가 잘못하고있는거야? 어떻게 올바른 방식으로 그것을 할 수 있습니다.?
문자열 표현이나 번호 만 사용 하시겠습니까? – fge
아마도'BitSet'에서 JavaDoc을 읽지 않았을 것입니다. 예를 들어'A.set (01)'은'A.set (1)'이어야합니다. 즉, 인덱스 1에 비트를 설정하면 인덱스 0의 첫 번째 비트는 설정되지 않은 상태로 유지됩니다. – Thomas