无法将 HashMap 数据转换为对象列表(模型 class)

Cannot convert HashMap data to List of objects (Model class)

我在 Firebase 数据库中有地址列表。它是这样检索的:

    addressesRef
        .addListenerForSingleValueEvent(object : ValueEventListener {
            override fun onDataChange(snapshot: DataSnapshot) {
                if (snapshot.exists()) {

                    
                    //Toast.makeText(this@AddressActivity, "Addresses fetched!", Toast.LENGTH_SHORT).show()
                }
            }

注意带有 2 个 ID 的地址(它们以相反的顺序获取)

我正在尝试将其转换为 ArrayList<Address>,其中地址是我的模型 class。我该怎么做?

看起来你在数据库中的是 Map<String, Address> 而不是 List<Address>。如果您只想获取 Address 值,您可以加载地图并只获取其值,或者(首选):

override fun onDataChange(snapshot: DataSnapshot) {
    if (snapshot.exists()) {
        for (addressSnapshot in snapshot.children) {
            val address = addressSnapshot.getValue<Address>();
            ...
        }
    }
}