草庐IT

secondInt

全部标签

objective-c - 为什么 NSNumber 在值相等时指向同一个地址?

给定以下代码:intfirstInt,secondInt;firstInt=5;secondInt=5;NSNumber*firstNumber=[NSNumbernumberWithInt:firstInt];NSNumber*secondNumber=[NSNumbernumberWithInt:secondInt];为什么这两个NSNumber实例指向同一个地址?这让我发疯!当然,如果您将secondInt更改为“4”,一切都会按预期工作。谢谢,杰里米 最佳答案 这可能是编译器优化或实现细节:因为NSNumber是不可变的,所