加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift运算符的优先级是什么?

发布时间:2020-12-14 05:23:20 所属栏目:百科 来源:网络整理
导读:我想查找一些运算符的优先级.是否有某个列表?我还没找到一个. Updated for Swift 3.0 Swift 3.0 现在Swift文档中有一个page. 下面列出了所有优先级组(也可见命令单击导入Swift): precedencegroup BitwiseShiftPrecedence { higherThan: MultiplicationPrec
我想查找一些运算符的优先级.是否有某个列表?我还没找到一个.

Updated for Swift 3.0

Swift 3.0

现在Swift文档中有一个page.

下面列出了所有优先级组(也可见命令单击导入Swift):

precedencegroup BitwiseShiftPrecedence {
    higherThan: MultiplicationPrecedence
}

precedencegroup FunctionArrowPrecedence {
    associativity: right
}

precedencegroup AssignmentPrecedence {
    associativity: right
    assignment: true
    higherThan: FunctionArrowPrecedence
}

precedencegroup RangeFormationPrecedence {
    higherThan: CastingPrecedence
}

precedencegroup CastingPrecedence {
    higherThan: NilCoalescingPrecedence
}

precedencegroup AdditionPrecedence {
    associativity: left
    higherThan: RangeFormationPrecedence
}

precedencegroup NilCoalescingPrecedence {
    associativity: right
    higherThan: ComparisonPrecedence
}

precedencegroup ComparisonPrecedence {
    higherThan: LogicalConjunctionPrecedence
}

precedencegroup LogicalConjunctionPrecedence {
    associativity: left
    higherThan: LogicalDisjunctionPrecedence
}

precedencegroup LogicalDisjunctionPrecedence {
    associativity: left
    higherThan: TernaryPrecedence
}

precedencegroup DefaultPrecedence {
    higherThan: TernaryPrecedence
}

precedencegroup TernaryPrecedence {
    associativity: right
    higherThan: AssignmentPrecedence
}

precedencegroup MultiplicationPrecedence {
    associativity: left
    higherThan: AdditionPrecedence
}

斯威夫特2.1

在Swift标题中:

infix operator %= {
    associativity right
    precedence 90
    assignment
}

infix operator >= {
    associativity none
    precedence 130
}

infix operator != {
    associativity none
    precedence 130
}

infix operator <<= {
    associativity right
    precedence 90
    assignment
}

infix operator || {
    associativity left
    precedence 110
}

infix operator += {
    associativity right
    precedence 90
    assignment
}

infix operator / {
    associativity left
    precedence 150
}

infix operator - {
    associativity left
    precedence 140
}

infix operator << {
    associativity none
    precedence 160
}

infix operator |= {
    associativity right
    precedence 90
    assignment
}

infix operator >>= {
    associativity right
    precedence 90
    assignment
}

infix operator <= {
    associativity none
    precedence 130
}

infix operator -= {
    associativity right
    precedence 90
    assignment
}

infix operator ?? {
    associativity right
    precedence 131
}

infix operator > {
    associativity none
    precedence 130
}

infix operator ~= {
    associativity none
    precedence 130
}

infix operator + {
    associativity left
    precedence 140
}

infix operator ^ {
    associativity left
    precedence 140
}

infix operator ... {
    associativity none
    precedence 135
}

infix operator /= {
    associativity right
    precedence 90
    assignment
}

infix operator * {
    associativity left
    precedence 150
}

infix operator *= {
    associativity right
    precedence 90
    assignment
}

infix operator & {
    associativity left
    precedence 150
}

infix operator !== {
    associativity none
    precedence 130
}

infix operator % {
    associativity left
    precedence 150
}

infix operator && {
    associativity left
    precedence 120
}

infix operator &* {
    associativity left
    precedence 150
}

infix operator &+ {
    associativity left
    precedence 140
}

infix operator &= {
    associativity right
    precedence 90
    assignment
}

infix operator >> {
    associativity none
    precedence 160
}

infix operator &- {
    associativity left
    precedence 140
}

infix operator === {
    associativity none
    precedence 130
}

infix operator ~> {
    associativity left
    precedence 255
}

infix operator ..< {
    associativity none
    precedence 135
}

infix operator < {
    associativity none
    precedence 130
}

infix operator == {
    associativity none
    precedence 130
}

infix operator ^= {
    associativity right
    precedence 90
    assignment
}

infix operator | {
    associativity left
    precedence 140
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读