gpt4 book ai didi

java - 为什么java/android允许 boolean 变量和字符串之间按位&

转载 作者:行者123 更新时间:2023-12-01 15:45:39 25 4
gpt4 key购买 nike

我可以在 boolean 变量和字符串之间执行按位&操作。没有编译错误!

结果会怎样呢?它是如何工作的。根据我的理解,它不允许这种类型的按位运算。这是一个错误还是按位功能只考虑位而不关心类型?

最佳答案

可以 bitwise &字符,但不是字符串。示例:

public class BitwiseTest {
public static void main(String[] args) {
System.out.println(Integer.toBinaryString(0));
System.out.println(Integer.toBinaryString(1));
System.out.println(Integer.toBinaryString(2));
System.out.println(Integer.toBinaryString(1&2));
System.out.println(Integer.toBinaryString(1&'2'));
}
}

打印...

0
1
10
11
110011

然而这不能编译:

System.out.println(Integer.toBinaryString(1&"my String"));

编译器输出:

$ javac BitwiseTest.java 
BitwiseTest.java:10: operator & cannot be applied to int,java.lang.String
System.out.println(Integer.toBinaryString(1&"my String"));
^
1 error

关于java - 为什么java/android允许 boolean 变量和字符串之间按位&,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7075818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com