但是我只是不知道编译器如何知道我已经传递了二进制数而不是整数。 。 例如,我想将10010(二进制格式)和1110(二进制格式)分开?
答案 0 :(得分:1)
要从扫描仪获取此输入,可以使用Integer.parseInt(String,radix)函数。
然后您将另一个减去一个int并将结果转换回二进制字符串以显示它。
import java.util.Scanner;
public class Main3 {
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int one = Integer.parseInt(scan.nextLine(),2);
int two = Integer.parseInt(scan.nextLine(),2);
String result = Integer.toBinaryString(one - two);
System.out.println(result);
}
}
答案 1 :(得分:0)
从Java 7开始,您可以使用二进制文字在数字前添加前缀0b。
int anInt1 = 0b10010;
https://docs.oracle.com/javase/8/docs/technotes/guides/language/binary-literals.html