首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何比较两个字符串以查看其中一个字符串是否大于另一个字符串

如何比较两个字符串以查看其中一个字符串是否大于另一个字符串
EN

Stack Overflow用户
提问于 2019-01-10 10:11:29
回答 3查看 1.4K关注 0票数 0

我正在做一个基本的纸牌游戏。我让用户洗两张牌,我想知道这两张牌是否相等,或者其中一张大于另一张或小于另一张。目前我只能判断它们是否相等。

代码语言:javascript
复制
   //Randomize Dealer Card
func randomDealerNumber(){

    let randomNumber = arc4random_uniform(8)
    if randomNumber == 0 {

        dealerNum.text = "10"
    } else if randomNumber == 1 {

        dealerNum.text = "1"
    } else if randomNumber == 2 {

        dealerNum.text = "2"
    } else if randomNumber == 3 {

        dealerNum.text = "3"
    } else if randomNumber == 4 {

        dealerNum.text = "4"
    }else if randomNumber == 5 {

        dealerNum.text = "5"
    } else if randomNumber == 6 {

        dealerNum.text = "6"
    } else if randomNumber == 7 {

        dealerNum.text = "7"
    }
}



let playerCard = playerNum.text
let dealerCard = dealerNum.text
if playerCard == dealerCard {
    print("These two strings are considered equal")
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-01-10 10:59:47

你不应该将值存储在你的UIControl中。这些值应该放在代表你的模型的变量中,然后只比较模型中的值。

我建议将您生成的随机值保留为Int,然后对它们进行比较。将属性观察器(didSet)添加到这些观察器中将允许您在设置这些值时设置标签:

代码语言:javascript
复制
class ViewController: UIViewController {
    @IBOutlet weak var dealerNum: UILabel!
    @IBOutlet weak var playerNum: UILabel!

    var dealerCard = 0 {
        didSet {
            dealerNum.text = String(dealerCard)
        }
    }

    var playerCard = 0 {
        didSet {
            playerNum.text = String(playerCard)
        }
    }

    func randomDealerNumber() {
        var randomNumber = Int.random(in: 0...7)
        if randomNumber == 0 {
            randomNumber = 10
        }
        dealerCard = randomNumber
    }

    func compare() {
        if playerCard == dealerCard {
            print("same")
        } else if playerCard < dealerCard {
            print("less than")
        } else {
            print("greater than")
        }
    }
}
票数 0
EN

Stack Overflow用户

发布于 2019-01-10 10:39:24

也许这里有一些疏忽,但如果我理解正确的话,那么您的解决方案非常简单。另一个if语句:

代码语言:javascript
复制
if playerCard > dealerCard{
    print("Player wins!")
}

PPShein是正确的。如果你在谈论字符串,你应该使用count

票数 0
EN

Stack Overflow用户

发布于 2019-01-10 10:55:26

基本上,您希望比较文本字段的整数值。所以你需要把它们转换成整数。(例如"10“到10)

你可以这样做

代码语言:javascript
复制
if(Int(playerCard) > Int(dealerCard)){......}

只需确保您添加了足够的安全检查,以验证输入的值是否可以转换为整数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54121054

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档