代码B中的参数videoList
是List<File>
类型,而变量listFile
是MutableList<File>
。
我认为代码A会导致错误,但是实际上,它运行良好,为什么?
代码A
private lateinit var listFile: MutableList<File>
override fun onViewCreated(view: View,savedInstanceState: Bundle?) {
super.onViewCreated(view,savedInstanceState)
val outputDirectoryOfVideo = getVideoOutputDirectory(requireContext())
listFile =outputDirectoryOfVideo.listFiles{file -> VIDEO_EXTENSION_WHITELIST.contains(file.extension.toUpperCase())}
.sorted().reversed().toMutableList()
videoRecyclerView.layoutManager = LinearLayoutManager(requireContext(),RecyclerView.VERTICAL,false)
val aVideoListAdapter=VideoListAdapter(listFile,requireactivity())
videoRecyclerView.adapter=aVideoListAdapter
}
代码B
class VideoListAdapter (private val videoList: List<File>,private val mactivity: activity) : RecyclerView.Adapter<VideoListAdapter.MyViewHolder>() {
}