输出一个任意字符串的二进制数
import java.io.*;
public class Main {
public static void main(String[] args)throws IOException{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
//Scanner br=new Scanner(System.in);
String character=null;
while((character=br.readLine())!=null){
byte[] byteArray =character.getBytes();
//当character为char型时,用Character.toString().getBytes()方法
//当character为int、string等等类型时,用String.valueOf()方法
for (byte b : byteArray) {
String binaryByte = Integer.toBinaryString(b & 0xff);//0和1取0,1和1取1
/*它的作用是将一个整数与 0xff 进行按位与操作,然后将结果转换为二进制字符串并赋值给变量 binaryByte。其中,“&” 是 按位与 运算符,0xff 是十六进制表示的 255,相当于二进制的 11111111。对0xff进行按位与操作——这样做通常是为了获取一个字节(8 位)的二进制表示,因为在 Java 中整数通常是 32 位或 64 位的,通过与 0xff 进行按位与操作可以只保留原数“二进制数的”低 8 位的值,并将其转换为二进制字符串表示*/
System.out.println(binaryByte);
}
}
}
}
public class Main {
public static void main(String[] args)throws IOException{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
//Scanner br=new Scanner(System.in);
String character=null;
while((character=br.readLine())!=null){
byte[] byteArray =character.getBytes();
//当character为char型时,用Character.toString().getBytes()方法
//当character为int、string等等类型时,用String.valueOf()方法
for (byte b : byteArray) {
String binaryByte = Integer.toBinaryString(b & 0xff);//0和1取0,1和1取1
/*它的作用是将一个整数与 0xff 进行按位与操作,然后将结果转换为二进制字符串并赋值给变量 binaryByte。其中,“&” 是 按位与 运算符,0xff 是十六进制表示的 255,相当于二进制的 11111111。对0xff进行按位与操作——这样做通常是为了获取一个字节(8 位)的二进制表示,因为在 Java 中整数通常是 32 位或 64 位的,通过与 0xff 进行按位与操作可以只保留原数“二进制数的”低 8 位的值,并将其转换为二进制字符串表示*/
System.out.println(binaryByte);
}
}
}
}
全部评论
相关推荐
11-18 21:06
蚌埠坦克学院 Java 点赞 评论 收藏
分享