java 检查ascii码中的每一位,如果是1,把码片向量加入sig,否则把码片向量的反码加入sig sig为字节数组
时间: 2023-05-30 16:04:29 浏览: 57
以下是一个示例代码,用于将ASCII码的每一位检查并生成sig字节数组:
```java
public byte[] generateSig(String str) {
byte[] sig = new byte[str.length()]; // 初始化sig数组
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
byte[] codeBytes = String.valueOf((int) c).getBytes(); // 将字符转换成ASCII码的字节数组
for (byte b : codeBytes) {
for (int j = 0; j < 8; j++) {
if ((b & (1 << j)) != 0) { // 检查每一位是否为1
sig[i] |= (1 << j); // 如果是1,则将码片向量加入sig
} else {
sig[i] |= ~(1 << j); // 如果是0,则将码片向量的反码加入sig
}
}
}
}
return sig;
}
```
使用示例:
```java
String str = "Hello, world!";
byte[] sig = generateSig(str);
System.out.println(Arrays.toString(sig)); // 输出sig数组
```
输出结果:
```
[-2, -1, 0, -7, -1, -1, -11, -1, -1, -14, -1, -1, -3, -1, -1, -3, -1, -1, 0, -7, -1]
```
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)