Tag: 布尔

为什么不同的布尔实例的哈希代码总是相同的?

在下面的代码中,哈希码总是相同的。 为什么这样? 码: public class BooleanClass { public static void main(String[] args) { Boolean b1 = new Boolean(true); Boolean b2 = new Boolean(false); Boolean b3 = new Boolean(true); Boolean b4 = new Boolean(false); Boolean b5 = new Boolean(false); Boolean b6 = new Boolean(true); System.out.println(b1.hashCode()); System.out.println(b2.hashCode()); System.out.println(b3.hashCode()); System.out.println(b4.hashCode()); System.out.println(b5.hashCode()); System.out.println(b6.hashCode()); } } 输出: 1231 1237 1231 […]

双等于vs是在Python中

我在Python解释器中运行以下代码: >>> foo = 10 >>> dir(foo) == dir(10) True >>> dir(foo) is dir(10) False >>> 为什么是这样?

Objective C布尔数组

我需要在objective-c中使用一组布尔值。 我已经设置了它,但是编译器在下面的语句中引发一个警告: [updated_users replaceObjectAtIndex:index withObject:YES]; 这是,我敢肯定,因为是不是一个对象; 这是一个原始的。 无论如何,我需要做到这一点,并非常感谢如何实现它的build议。 谢谢。

覆盖自定义类的bool()

所有我想要的是为bool(myInstance)返回False(和myInstance评估为False时,如条件,如果/ / /和。我知道如何覆盖>,<,=) 我试过这个: class test: def __bool__(self): return False myInst = test() print bool(myInst) #prints "True" print myInst.__bool__() #prints "False" 有什么build议么? (我正在使用Python 2.6)

单字节布尔。 为什么?

在C ++中,为什么布尔需要一个字节来存储true或false,只有一个位就足够了,如0表示false,1表示true。 (为什么Java也需要一个字节?) 其次,使用以下几点更安全? struct Bool { bool trueOrFalse : 1; }; 第三,即使安全,上面的技术真的会有帮助吗? 既然我听说我们在那里节省空间,但编译器生成的代码访问它们的速度比生成访问基元的代码更大更慢。

C ++安全的bool包装

我试图devise一个布尔应用安全布尔成语的 包装结构。 解决这个问题的经典实现非常简单:骨架可以是这样的: struct Bool final { Bool() = default; Bool(bool value) : _value{value} {} explicit operator bool() const { return _value; } private: bool _value{false}; }; 我试图改进的部分是Bool是如何构build的。 例如,我想避免隐式缩小devise: Bool b1(45); // yields warnings, but it compiles Bool b2{3}; // not ok by standard 我试图用模板伤害自己,但没有成功。 我怎么能使它工作?

SQLite中是否有一个布尔文字?

我知道关于boolean 列types ,但在SQLite中有一个boolean 文字 ? 在其他语言中,这可能是true或false 。 显然,我可以使用0和1 ,但是我倾向于尽量避免所谓的“幻数”。 从这个列表中 ,似乎可能存在于其他SQL实现中,而不是SQLite。 (我正在使用SQLite 3.6.10,这是值得的。)

什么是性能明智的产生随机布尔最好的方法?

我需要在性能关键path上生成随机布尔值。 我为此编写的代码是 std::random_device rd; std::uniform_int_distribution<> randomizer(0, 1); const int val randomizer(std::mt19937(rd())); const bool isDirectionChanged = static_cast<bool>(val); 但不要认为这是做这个的最好方法,因为我不喜欢做static_cast<bool> 。 在网上我发现了一些更多的解决scheme 1. std::bernoulli_distribution 2. bool randbool = rand() & 1; 记得在开始时调用srand() 。

在Java中,什么是布尔操作顺序?

我们来看一个对象Cat的简单例子。 我想确定“不是零” cat是橙色还是灰色。 if(cat != null && cat.getColor() == "orange" || cat.getColor() == "grey") { //do stuff } 我相信和先来,然后是OR。 我有点模糊,所以这是我的问题: 有人可以通过这个陈述走我,所以我敢肯定,我会得到什么发生? 另外,如果我添加括号会发生什么; 这是否改变了操作的顺序? 我的操作顺序是否会从语言变为语言?

布尔值开关/反转

有没有在PHP中切换/颠倒boolean值的函数? 喜欢…一个捷径: if($boolean === true){ $boolean = false; }else{ $boolean = true; }