当前位置: 首页 > 知识库问答 >
问题:

二进制运算符'>'不能应用于类型'(String?)'和'String?'的操作数

燕扬
2023-03-14

二进制运算符'

if (dictionary["firstKey"] as? String) > coreDataObject?.objectID as? String {

}

(字符串?)是什么类型?

共有1个答案

凤晨朗
2023-03-14

正如克里斯蒂安所指出的,你有两个选择权,这是行不通的。

至于为什么错误报告类型“(String?),编译器似乎认为if语句的第一部分是创建元组,而不是定义操作顺序。这是我在Swift中不清楚的地方——括号什么时候定义元组,什么时候只确定操作符的优先级?

试试这个:

if let firstKeyValue = dictionary["firstKey"] as String,
  let objectID = coreDataObject?.objectID as String
{
  if firstKeyValue > objectID
  {
     //your code here
  }
}
else
{
  //Error. Could not convert data to strings
}
 类似资料:
  • 我试图通过UISearchBar在UITableView上搜索用户。问题是,当我尝试时,错误不断出现。 这是我的代码: 我正在尝试通过Firebase fetch在我的应用程序中搜索用户。我已经将用户带到了UITableView上,问题是我无法搜索特定的用户。请帮忙!我什么都试过了。

  • 嗨,我对swift 3有问题。有一段代码给我一个错误。我将其从swift 2.2转换为swift 3,结果就是这样 几行代码是swift 2代码,工作正常 第二位代码是转换后的代码,它给我一个错误 如果我使用“=”而不是“=”,则会产生以下错误 无法分配给属性:self不可变 导致错误的是if语句 二进制运算符'=='不能应用于类型的操作数'(UIViewController,发送者:AnyObj

  • 我在练习一些代码,遇到了一些问题。 这是密码 所有的代码都很好,打印得很好,但是最后一行带来了一个问题。 我以为是macFood。水果是数组。 因为macFood。水果=[水果(名称:“苹果”,容量:1),水果(名称:“香蕉”,容量:2)]工作。 所以我想我可以使用'='运算符添加另一个元素。 但它在最后一行崩溃了,macFood。水果=[水果(名称:“葡萄”,容量:3)] 错误消息为 “二进制运

  • 我正在尝试构建一个简单的Swift应用程序来计算增值税(增值税=20%)。 因为某种原因我一直 二进制运算符*不能应用于Int和Double类型的操作数 在线上

  • 从Swift 2.3转换为3.2时,我收到以下错误。 错误:二进制运算符不能应用于Int和String类型的操作数 对于此if条件,即<代码>if(错误?.code)!==“-112”,如下行所示。

  • 问题内容: 我正在尝试创建一个for循环,但似乎无法理解如何摆脱此错误 我的代码: 错误在线上和 问题答案: 您不能使用浮点类型创建一个(或)。 您要么要将其转换为: 或者您想使用(Swift 2语法): Swift 3语法: 取决于是否需要浮点精度。请注意,如果您的上限是一个非整数值,则该版本将比范围运算符版本多迭代一次,这是因为它将忽略小数部分。