【问题标题】:Return Repeating character in swift快速返回重复字符
【发布时间】:2017-11-08 05:39:52
【问题描述】:

我试图在 swift 中找到第一个重复字符,并返回找到的字符。我在这段代码中遇到了一堆错误,我不确定为什么这不起作用。

var myArry = "Hello, World"
var counts = [Character]()

func findRepeating(myArry: String) -> Character
{
    counts = []
    for char in myArry.characters
    {
        if char in counts
        {
            print("Character found")
            return char
        }
        else
        {
            counts.append(char)
        }
    }
    return "A"
}

【问题讨论】:

  • var counts = {} 应该做什么?请参阅 Swift 书籍以了解数组以及如何初始化它们。
  • @rmaddy 字典来存储找到的字符
  • 然后阅读 Swift 书籍以了解字典。
  • @FrankBoccia 您需要初始化像[:] 这样的字典。不像{}。而且你也将 nil 返回给应该返回 Character 的函数。
  • @FrankBoccia:Google 首次点击“Swift 如何检查元素是否在数组中”:stackoverflow.com/questions/24102024/…

标签: swift return return-value


【解决方案1】:

最简单的答案:

let str = "abcdefghijkhlmnop"
var count = 0
for char in str.characters {
    for charNext in str.characters {
        if (char == charNext) {
            count += 1
            if (count > 1) {
                return char           // h
            } 
        }
    }
    count = 0
}

【讨论】:

  • 字符串字符属性已弃用Xcode 9.1 • Swift 4.1
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多