Kotlin 推断类型和预测类型不一致,那就回头看看接口的返回值是不是写错了

1.在使用kotlin去获取mybatis查询返回值的时候,一直提示inferred type 与expected type不一致,忙活大半天,尝试了各种办法,最后发现是接口中方法的返回值写错了,…NMSL,也算给自己提个醒,下次要注意这些细节
在这里插入图片描述在这里插入图片描述

Kotlin 是一种静态类型的编程语言,它具有强大的类型推断功能。这意味着编译器能够在显式指定数据类型的上下文中,根据变量赋值或函数参数推断类型。这使得代码更加简洁,同时也减少了潜在的类型错误。 Kotlin类型推断主要体现在以下几个方面: 1. **赋值时推断**:当你给变量赋值时,如果表达式的类型可以明确确定,编译器就会自动为变量分配正确的类型。例如: ```kotlin val x = 5 // x会被推断为Int类型 ``` 2. **函数参数**:如果你的函数接受一个参数,而没有指定具体的类型Kotlin 将根据传递的实际参数类型进行推断。例如: ```kotlin fun printValue(value: Any) { println(value) } printValue("Hello") // value被推断为String类型 ``` 3. **隐含类型**:对于简单的、没有泛型空安全检查的操作,Kotlin 可能会显式地声明类型。比如数组访问、基本类型等。 4. **可空类型**(nullable types):Kotlin 引入了可空类型 `String?` 来表示变量可能为null。即使类型推断通常能找到非空类型,但在需要处理 null 的情况下,仍然支持显式指定。 5. **类型注解**:虽然是强制性的,但你可以使用类型注解 `<T>` 或 `@JvmType` 提供额外的类型信息,帮助编译器在某些复杂场景下推断。 尽管类型推断带来了便利,但有时为了增强可读性避免歧义,还是建议在关键地方提供类型提示,特别是涉及高级特性如泛型、协程或函数式编程时。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值