我如何使用IndexOf与数据类的对象数组?


fun main() {
data class seriesData( 
var seriesName: String = "",
var bookListEntries: MutableList<Int> = arrayListOf() {}
var mySeriesData: MutableList<seriesData> = ArrayList()
for (i in 0..5) {
var myString: String = "series" + i.toString() 
mySeriesData.add(seriesData(seriesName = myString, 
bookListEntries = ArrayList()))
}
// I want to find an occurrence of one of the strings
println(mySeriesData.seriesName.indexOf("series2")) 
// The last statement always gives me unresolved reference on seriesName
}

我已经尝试了上面的几种变体,包括将两个变量放在数据类的主体中,并使用"it."没有成功。我是Kotlin的新手。我知道上面的一些代码可以简化,但是我把它们分开来帮助阐明步骤。

这个indexOf函数给出了整个数据类,而不是数据类下的单个值

例如

如果你有以下数据类

data class seriesData(
var seriesName: String = "",
var bookListEntries: MutableList<Int> = arrayListOf(),
)

然后在这个数据类上运行循环来填充数据类

下的变量值
val mySeriesData: MutableList<seriesData> = ArrayList()
for (i in 0 .. 5) {
var myString: String = "series" + i.toString()
mySeriesData.add(
seriesData(
seriesName = myString,
bookListEntries = ArrayList()
)
)
}

现在你想知道哪个是"series2"

的索引那么你需要一个完整的数据类来处理

在indexOf函数中,您需要像这样传递整个数据类:

mySeriesData.indexOf(seriesData("series3", ArrayList()))
  • 将上述行保存为一个变量,并给出该数据的索引

相关内容

  • 没有找到相关文章

最新更新