3 cocoa-touch integer numbers objective-c ios
我有一个带有整数的简单应用程序。我想检查整数值,如果它是正值,则将其从正值更改为负值。我还希望它检查整数是否为负数,如果当前为负数,则将其更改为正数。下面的代码是我的想法:
int number;
// number gets set.... etc...
// Now do number check.
if (number > 0) {
number = (0 - number);
}
else if (number < 0) {
// Since number is negative, lets try to
// minus minus the number and make it positive.
number = (0 - number);
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,我的方法是否正确,更重要的是实现此功能的一种好方法?我读到您可以使用一种称为的方法,abs()但据我了解它并不安全?
丹,谢谢您的时间。
看一下您的代码,让我们将其归结为:
// Now do number check.
if (number > 0)
{
number = (0 - number);
}
else if (number < 0)
{
// Since number is negative, lets try to
// minus minus the number and make it positive.
number = (0 - number);
}
Run Code Online (Sandbox Code Playgroud)
显然,两个- if分支中的语句是相同的。所以你可以这样写:
// Now do number check.
if (number > 0 || number < 0) // || means logical or
{
number = (0 - number);
}
Run Code Online (Sandbox Code Playgroud)
如果考虑到-0为0,则可以删除整个if:
number = (0 - number);
Run Code Online (Sandbox Code Playgroud)
此外,您可以写...
number = -number
Run Code Online (Sandbox Code Playgroud)
……也可以按照其他答案的意图使用乘法。
| 归档时间: |
|
| 查看次数: |
7425 次 |
| 最近记录: |