我已经开始了很长时间的艰苦探索,学习并将TDD 应用到我的工作流程中.我认为TDD与IoC原理非常吻合.
在SO中浏览了一些TDD标记问题之后,我认为对接口而不是对象进行编程是一个好主意.
您能提供简单的代码示例,说明这是什么,以及如何在实际使用案例中应用它?简单的例子对我(以及其他想要学习的人)掌握概念至关重要.
非常感谢.
我有一个空的数组列表:
var mylist: ArrayList<Int> = ArrayList()
Run Code Online (Sandbox Code Playgroud)
当我想在其中设置值时,我收到此错误:
java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0
Run Code Online (Sandbox Code Playgroud)
问题是:我如何初始化我的清单?
我想RestTemplate在Kotlin中使用Spring ,如下所示:
//import org.springframework.web.client.RestTemplate
fun findAllUsers(): List<User> {
val restTemplate = RestTemplate()
//has error
val ret = List<User>.javaClass
return restTemplate.getForObject(URI(hostAddress), ret)
}
Run Code Online (Sandbox Code Playgroud)
该RestTemplate.getForObject(URI url, Class<T> responseType)有这个签名,我从得到这个错误"未解决的参考序列" List在val ret = List<User>.javaClass.
如果我这样使用,val ret = List<User>::class.java我会收到此错误"只允许类在类文字的左侧"
有什么问题?这样做的正确方法是什么?这是一个错误吗?
我正在尝试学习kotlin,我想将我的一个android项目从java转换为kotlin.但我有一个问题
override fun onResponse(call: Call<List<CitySearch>>?, response: Response<List<CitySearch>>?) {
if(response != null && response.isSuccessful) {
val list = response.body()
cityAdapter.clear()
if(list != null && !list.isEmpty()){
cityAdapter.addAll(list)
listView.visibility = View.VISIBLE
recyclerView.visibility = View.GONE
cityName.visibility = View.GONE
}
}
}
Run Code Online (Sandbox Code Playgroud)
我收到错误操作不支持只读集合在kotlin.collections.EmptyList.clear()与cityAdapter.clear()的行上我不知道如何解决它.
对于所有项目,请检查