例如,如果我有以下數據類: data class Data(
val name: String = "",
val number: Long = 0
)
和功能可以返回null: fun newName(): String? {}
fun newNumber(): Long? {}
我知道我可以使用以下方法來使用的功能價值,如果他們不null: val newNam
請幫助我理解這一段代碼在科特林文檔: - val a: Int = 10000
print(a === a) // Prints 'true'
val boxedA: Int? = a
val anotherBoxedA: Int? = a
print(boxedA === anotherBoxedA) // !!!Prints 'false'!!!
現在,我明白,第一個int a =
考慮下面的程序。我想知道爲什麼這個代碼的行爲方式不同。 這是在編譯時返回一個錯誤: void access<T>(T val, bool result){
var getaccess = val is int? & result;
}
這不返回任何錯誤: void access<T>(T val, bool result){
var getaccess = val is Nullable
下面的代碼與Eclipse編譯: @Retention(RetentionPolicy.CLASS)
@Target({ TYPE_USE })
public @interface Nullable {
// This is org.eclipse.jdt.annotation.Nullable
}
class SomeClass {
private final [