如果在Swift中a == 1 && a == 2 && a == 3

今天,我发现了有关采访的一个非常有趣的话题,其中一位前端开发人员参加了。 问题是:该陈述是否可能等于true?

嗯…起初我就像..

如果有人看到那样的话,他们会在大学里杀死我的! 但是然后……嗯,这不是我第一次看到有人在产品上写这样的代码……

向下滚动之前,请花点时间仔细考虑一下如何做😉

您知道他们在说什么,“没有什么是不可能的”。让我们用一些好的方法来阐明这个话题!

好的,现在让我们尝试在变量声明中覆盖getter。

哦……对吧……这会给我们造成麻烦……

这种思维方式并不完全有害……我们可以创建另一个变量b ,在访问a的getter时将对其进行递增。

而且有效!

我们可以尝试对自定义类型进行实验并覆盖等号运算符,但这将导致相同的逻辑。 让我给你演示。

现在是真正的徒的版本 ,仅用于满足要求。 它可以工作,但是很好……它仍然需要更多的逻辑\ _(ツ)_ /

它将混合您项目中所有整数的逻辑,因此使用此类方法时要小心! 尽管如此,我们还是提供了正确的答案!

尝试用您知道的其他语言来实现类似的功能,这将有助于提高您的技能,使您在接受采访时更加自在!

您如何看待这种面试问题? 是否太具体而无法包含在问题集中? 请分享您的意见! 🙂