java 检查ascii码中的每一位,如果是1,把码片向量加入sig,否则把码片向量的反码加入sig
时间: 2023-05-30 09:04:22 浏览: 93
摩托328对讲机码片.zip
可以使用以下代码实现:
```java
public static void checkAscii(String str) {
int[] sig = new int[128];
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
int ascii = (int) c;
for (int j = 0; j < 7; j++) {
int bit = (ascii >> j) & 1;
if (bit == 1) {
sig[j]++;
} else {
sig[j] = sig[j] ^ 1; // 取反
}
}
}
System.out.println(Arrays.toString(sig));
}
```
该方法接受一个字符串作为参数,然后遍历字符串中的每个字符,将其转换为ASCII码。接着,对于每个ASCII码,检查其每一位是0还是1。如果是1,将对应的sig数组的元素加1;否则,将对应的sig数组的元素取反(即0变成1,1变成0)。最后打印sig数组即可。
阅读全文