首页 > 解决方案 > 在我的部分代码中哪些对象是非空类型?我有 kotlin.TypeCastException: null cannot be cast to non-null type kotlin.String 异常

问题描述

 fun loadData(){

    db?.collection("information")?.addSnapshotListener { snapshot, exception ->
        if(exception != null){
            Toast.makeText(applicationContext,exception.localizedMessage.toString(), Toast.LENGTH_LONG).show()
        }
        else{
            if(snapshot != null){
                var documents = snapshot.documents
                for(document in documents){
                    var authorName = document.get("authorName") as String  
                    var bookName = document.get("bookName") as String
                    var url = document.get("url") as String

                    authorNameFromFbList?.add(authorName)
                    bookNameFromFbList?.add(bookName)
                    urlFromFbList?.add(url)

                }




            }

                }
                val adapter = MainAdapter(authorNameFromFbList!!,bookNameFromFbList!!,urlFromFbList!!)
                recyclerView.adapter = adapter
        }
    }

strong text 在我的代码中 authorName bookName 和 url 是 Any 类型,我识别出要添加的字符串数组列表。所以我认为我应该从 any 类型转换为 String

标签: androidkotlinnullpointerexception

解决方案


推荐阅读