data class precioSuper(var producto:String, var precio: Int, val codigoDeBarras:String)
fun main(args: Array<String>) {
//Qué vende o super?
val galletas = precioSuper("galletas", 3, "0001")
val chocolate = precioSuper("chocolate", 5, "0002")
val leite = precioSuper("leite", 2, "0003")
var productos = arrayListOf<String>("galletas", "chocolate", "leite")
var totalProductos = productos.size
var codigoDeBarras2 = for(producto in totalProductos)
}
在代码var codigoDeBarras2 = for(totalProductos中的producto)的科特琳的车道上,向我发送此错误:“ For循环范围必须具有'iterator()'方法”
错误恰好在“ totalProductos”中“ for( totalProductos 中的producto”)
答案 0 :(得分:4)
错误是您正在将for
循环分配给变量。
for
不是表达式,因此无法分配。
同样,将producto in totalProductos
视为totalProductos
时,表达式Collection
毫无意义,而只是一个整数。
如果要遍历列表productos
的项目,可以执行以下操作:
for (producto in productos) {
//..............
}
或
for (i in 0 until totalProductos) {
//..............
}
或
productos.forEach {
}
答案 1 :(得分:0)
假设您要尝试“提取” producto
列表的productos
属性。那你可以试试
var codigoDeBarras2 = productos.map { it.producto }