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

在Swift中的嵌套循环中从特定索引枚举字符串

邢星波
2023-03-14

使用enumerated()方法从string获取字符

let str = "Hello"

for (i,val) in str.enumerated() {
        print("\(i) -> \(val)")
}
for (i,val) in str.enumerated() {
        print("\(i) -> \(val)")
        for (j,val2) in str.enumerated() {
            // val2 should be from i postion instead starting from zero
        }
}

共有1个答案

姜煌
2023-03-14

可以使用dropfirst()在字符串中以特定位置开始创建视图:

for (i,val) in str.enumerated() {
    print("i: \(i) -> \(val)")
    for (j, val2) in str.dropFirst(i).enumerated() {
        print("j: \(i+j) -> \(val2)")
    }
}

如果要获得与原始字符串对应的索引,则需要在第二个循环中添加i,否则j将在dropfirst()创建的视图中保存索引

 类似资料:
  • 有没有更好的办法解决这个问题?

  • 问题内容: 我想将特殊字符,括号(“(”和“)”)和撇号(“)”放在枚举中。 我有这个: 但这不起作用。Java说了一些有关无效令牌的内容。我该如何解决? Grtz me.eatCookie(); 问题答案: 您可以执行以下操作: 使用示例:

  • 问题内容: 我在Swift中有一个像这样的字符串: 如果我想将其更改为类似于以下内容的字符串:,我想在索引0处添加括号,该怎么做? 在Objective-C中,是通过以下方式完成的: 如何在Swift中完成? 问题答案: 如果您声明为是,则可以这样做,您可以通过以下方式进行: 输出为: 编辑: 如果要在开始时添加: 如果要在最后一个索引处添加字符: 如果要在特定索引处添加:

  • 有人能告诉我这是为什么吗?

  • 我用For创建了一个嵌套循环,这是程序代码和输出,然后我尝试了同时循环,得到了不同的结果 对于 虽然 请引导我。。谢谢

  • 我正在使用Compass从DTO对象中过滤数据。如果字段是POJO对象,则使用标记字段;如果字段是字符串,则使用标记字段。这非常有效:我将对象和字符串编入索引。 我的问题是如何注释枚举数据类型? 我拥有的枚举示例: 在这个片段中,我应该在哪里放置注释,应该放置哪个注释?