diff --git a/src/senior/Generics/Apple.kt b/src/senior/Generics/Apple.kt new file mode 100644 index 0000000..e81bf2b --- /dev/null +++ b/src/senior/Generics/Apple.kt @@ -0,0 +1,10 @@ +package senior.Generics + +/** + * 水果数据类 + * + */ +data class Apple( + var name: String, + var color: String +) diff --git a/src/senior/Generics/Box.kt b/src/senior/Generics/Box.kt new file mode 100644 index 0000000..4aed47e --- /dev/null +++ b/src/senior/Generics/Box.kt @@ -0,0 +1,17 @@ +package senior.Generics + +/** + * 泛型 + * + * + */ +class Box { + var t: T? = null + fun get(): T? { + return t + } + + fun set(t: T): Unit { + this.t = t + } +} \ No newline at end of file diff --git a/src/senior/Generics/Main.kt b/src/senior/Generics/Main.kt new file mode 100644 index 0000000..9a58c3d --- /dev/null +++ b/src/senior/Generics/Main.kt @@ -0,0 +1,31 @@ +package senior.Generics + +/** + * Generics + * + */ +fun main(args: Array) { + // 泛型 + var list1 = arrayListOf("aA","bB","cC") + println(list1) + + var list2 = arrayListOf(12,34,56) + println(list2) + + var list3 = arrayListOf(1L,3L,9L) + println(list3) + + // 泛型类 + var box = Box() + box.set(Apple("红富士苹果","红色")) + + var get = box.get() + println(get.toString()) + + var letters:CharRange = 'A'..'z' + var letters2: CharRange = 'A' until 'z' + println(letters2.toList()) + println(letters.toList().slice(1..4)) + println(letters.toList()[4]) + println(letters is CharRange) +} \ No newline at end of file