如何在 Kotlin 中将项目推送到数组?

问题描述 投票:0回答:3

我是 Kotlin 的新手,我的项目有这个案例.. 我有这个数组的例子:

items: [
        {name: "item A", quantity: "9"},
        {name: "item B", quantity: "2"},
        {name: "item C", quantity: "4"},
]

我有一个对象要添加到项目[]

new_object: {name: "item AA", quantity: "4"}

任何人都可以帮助我,如何在 Kotlin 中做到这一点......? 谢谢你之前..

android kotlin multidimensional-array
3个回答
1
投票

好吧,对于这种情况,您可以同时使用

MutableList
ArrayList

首先,您需要定义项目的结构

data class Item(
    val name: String,
    val quantity: String
)

然后你初始化列表

val items = mutableListOf(
    Item("Item A", "1"),
    Item("Item B", "2"),
    Item("Item C", "3"),
)

// Or

val items = arrayListOf(
    Item("Item A", "1"),
    Item("Item B", "2"),
    Item("Item C", "3"),
)

最后,当您想将项目附加到数组时,您可以这样做

val newItem = Item("Item D", "4")
items.add(newItem)

完整代码如下所示:

data class Item(
    val name: String,
    val quantity: String
)

val items = mutableListOf(
    Item("Item A", "1"),
    Item("Item B", "2"),
    Item("Item C", "3"),
)

val newItem = Item("Item D", "4")
items.add(newItem)

0
投票

使用 Kotlin 集合 ArrayList。 例子

val list = ArrayList<String>()
list.add("Sample")

同样,您可以将 String 替换为您的对象。您的代码的解决方案将是这样的

class User(var name:String,var quantity:String)

fun initList(){
    val list = arrayListOf<User>(
               User("Item A","9"),
               User("Item B","2"),
               User("Item C","4")
      )

list.add(User("Item AA",4))}

0
投票

假设您有一个 Array< String> arrayData 。您可以将其转换为 Arraylist,然后添加必要的字符串,然后再次将其转换为 Array

 val location= ArrayList<String>()
                        for(item in arrayData){
                            location.add(item)
                        }
                        location.add("Private Mileage")
                        location.add("Conference)

                        val towns: Array<String> = location.toTypedArray<String>()
© www.soinside.com 2019 - 2024. All rights reserved.