どのように接頭辞と接尾辞でkotlinを文字列にリスト<string>を変換します

メリージェーン :

どのように私は、AndroidでKotlinと、JSONで使用することができる文字列に番号のリストを変換することができますか?

私は、これは可能性が使用されるが、これは動作しません。

l.toTypedArray().contentDeepToString()

入力:

l: List<String> =[102,103]

出力:

s:String = "["102","103"]"

任意の助けいただければ幸いです。

deHaar:

あなたは使用することができjoinToString、このように:

fun main(args: Array<String>) {
    var l: List<String> = listOf("102" ,"103")
    return this.joinToString(prefix = "[\"", postfix = "\"]", separator = "\",\"")
}

希望のような出力になります。

["102","103"]

詳細については、読みのマニュアルを参照してjoinToString

あなたは、この拡張機能を作る可能性が持っているList<String>あなたはより多くのあなたのコード内で何度もそれを必要とする場合、コードの冗長性を減少させるためには:

// extend List<String> by a new method that creates your quoted String from the items
fun List<String>.toQuotedString(): String {
    return this.joinToString(prefix = "[\"", postfix = "\"]", separator = "\",\"")
}

fun main(args: Array<String>) {
    var l: List<String> = listOf("102" ,"103")
    println(l.toQuotedString())  // you can just use this method in your code
}

追加
のリストについては、あなたがそれをしたい場合は、実際の数字は(あなたと私の例では、使用しているList<String>)、あなただけのために同じことを行うことができますList<Int>

fun List<Int>.toQuotedString(): String {
    return this.joinToString(prefix = "[\"", postfix = "\"]", separator = "\",\"")
}

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=33556&siteId=1