从Kotlin的字符串列表中删除单词

吉纳维芙

我有一个可变的字符串列表,并且试图从每个字符串中删除一个单词。问题是我不相信从每一行中都删除了这个词。

    for (item in stringLines) {

        when {

            item.contains("SUMMARY") -> eventLines.add(item)
            item.contains("DTSTART") -> startDateLines.add(item)
            item.contains("DTEND") -> endDateLines.add(item)
            //item.contains("URL:") -> locationLines.add(item)
            //item.contains("CATEGORIES") -> categoriesLines.add(item)
    }

    }

    for (item in eventLines) {

        when{
            item.contains("SUMMARY") -> item.removePrefix("SUMMARY")
        }

    }

字符串是

SUMMARY WINTER FORMAL

我需要

WINTER FORMAL

但是无论什么原因它都没有出现。我知道如何在Java中执行此操作,但我不知道如何在Kotlin中执行此操作,并且找不到任何能够完成此操作的函数。我想念什么?

亚历山大·艾格

Kotlin(和Java)中的字符串是不可变的。因此,item.removePrefix返回一个新的String,您必须更新列表或创建一个新列表,如下所示:

for (item in eventLines) {

    when {
        item.contains("SUMMARY") -> 
            eventLinesWithPrefixRemoved.add(item.removePrefix("SUMMARY"))
        else -> eventLinesWithPrefixRemoved.add(item)
    }

}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章