我想将包含0和1的字符串转换为位数组。
该字符串是长度〜30000的和是稀疏(主要是0,很少1S)
例如,给定的字符串
“00000000100000000010000100000000001000”
我想将其转换为位的阵列,其将存储
[00000000100000000010000100000000001000]将字符串转换为位数组
我正在考虑使用BitSet或OpenBitSet 有没有更好的方法?用例是有效地执行逻辑或。
我沿着这些线路
final OpenBitSet logicalOrResult = new OpenBitSet();
for (final String line : lines) {
final OpenBitSet myBitArray = new OpenBitSet();
int pos = 0;
for (final char c : str.toCharArray()) {
myBitArray.set(pos) = c;
pos++;
}
logicalOrResult.or(myBitArray);
}
@ StevenA.Lowe它不是。 – Tad 2014-10-02 01:31:08
@ StevenA.Lowe这不是一个好问题,就是一个坏问题。为什么你在乎作业是否功课? – 2014-10-02 01:31:17
@AnubianNoob:如果它是作业,我告诉OP答案,那么他们什么都没学到。请参阅http://meta.stackexchange.com/questions/18242/what-is-the-policy-here-on-homework半官方政策 – 2014-10-02 01:33:14