退货和内联
我试图find相当于这个Java返回的Kotlin:
return new int[] {1, 2, 3};
我试过只是宣布然后像这样返回:
val returnArr: IntArray = intArrayOf(1, 2, 3) return returnArr
但是我得到一个警告,说:“variables只用于下面的回报,可以内联”。 内联是什么意思? 有没有办法在一条线上做到这一点?
在警告的情况下,“内联”意味着除去不需要在那里的局部variables,参数,函数等,代码将会更简单。 例如,在声明中
val returnArr: IntArray = intArrayOf(1, 2, 3) return returnArr
returnArr
没有任何用途(除了可能在调试时),你可以用它替换它
return intArrayOf(1, 2, 3)
使用术语“内联”来表示这种简化是JetBrains惯例,我认为是由于“Inline”重构的存在,可以自动化简化,就像我们正在讨论的那样(右键单击returnArr
,选择Refactor / Inline)。
警告不是编译器警告; 这是IntelliJ做的许多风格检查之一。 如果你喜欢你的临时variables,我想你可以通过选择Preferences / Editor / Inspections / Kotlin / Redundant Constructs并取消选中“Unnecessary local variable”来禁用它。