【问题标题】:How to check if the result of an operation equals an Integer? [closed]如何检查运算结果是否等于整数? [关闭]
【发布时间】:2020-04-05 20:24:02
【问题描述】:

我对 Swift(和编程)非常陌生。我需要比较余数运算符(模运算符)的结果是否等于整数。

这是我的代码:

if Int.random(in: 1...1000) % 4 >= "This number" {
  print ("OK")
} else {
    print ("WRONG")
}

如果 "This number" 被替换为实际数字,例如100 它工作正常。 但如果替换为Int 则会崩溃显示:类型“Int.Type”不能符合“BinaryInteger”;只有结构/枚举/类类型可以符合协议

【问题讨论】:

  • 欢迎您,好手!您是否尝试测试余数运算的结果是否具有整数类型,或者具有特定的整数值或其他?

标签: swift integer


【解决方案1】:

您必须将 Int 与 Int 进行比较,而不是 String 或 Int 类型(Int.Type)。如果要声明一个用于比较的值,可以将其声明为变量。要比较是否相等,请使用 == 运算符。

let thisNumber: Int = 3 // or any other value
if Int.random(in: 1...1000) % 4 == thisNumber {
  print ("OK")
} else {
    print ("WRONG")
}

现在Int.random(in: 1...1000) % 4thisNumber 都是 Int,因此您可以比较它们而不会出错。

【讨论】:

  • 感谢您的回答,尽管我认为我的主要错误是不知道余数运算符将始终生成整数。
猜你喜欢
  • 2023-03-29
  • 2014-12-13
  • 2017-11-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-09
相关资源
最近更新 更多