From a74cf2f28708e312496afd4d2779d7aadd4c59e2 Mon Sep 17 00:00:00 2001 From: Bunny <1319900154@qq.com> Date: Mon, 12 Aug 2024 23:58:38 +0800 Subject: [PATCH] init --- .idea/.gitignore | 8 ++ .idea/Kotlin-Demo.iml | 12 ++ .idea/codeStyles/codeStyleConfig.xml | 5 + .idea/kotlinc.xml | 6 + .idea/libraries/KotlinJavaRuntime.xml | 23 ++++ .idea/misc.xml | 6 + .idea/modules.xml | 8 ++ .idea/uiDesigner.xml | 124 ++++++++++++++++++ BasicSyntax-Loop.kt | 55 ++++++++ jTest/FIleCopyBase.java | 69 ++++++++++ jTest/HasMapTest.java | 43 ++++++ jTest/HashSetTest.java | 72 ++++++++++ jTest/TreeMapTest.java | 40 ++++++ out/production/Kotlin-Demo/.idea/.gitignore | 8 ++ .../Kotlin-Demo/.idea/Kotlin-Demo.iml | 12 ++ .../.idea/codeStyles/codeStyleConfig.xml | 5 + out/production/Kotlin-Demo/.idea/kotlinc.xml | 6 + .../.idea/libraries/KotlinJavaRuntime.xml | 23 ++++ out/production/Kotlin-Demo/.idea/misc.xml | 6 + out/production/Kotlin-Demo/.idea/modules.xml | 8 ++ .../Kotlin-Demo/.idea/uiDesigner.xml | 124 ++++++++++++++++++ .../Kotlin-Demo/BasicSyntax_LoopKt.class | Bin 0 -> 3394 bytes .../META-INF/Kotlin-Demo.kotlin_module | Bin 0 -> 72 bytes .../Kotlin-Demo/jTest/FIleCopyBase.class | Bin 0 -> 2998 bytes .../Kotlin-Demo/jTest/HasMapTest.class | Bin 0 -> 3023 bytes .../Kotlin-Demo/jTest/HashSetTest$1.class | Bin 0 -> 620 bytes .../Kotlin-Demo/jTest/HashSetTest$2.class | Bin 0 -> 609 bytes .../Kotlin-Demo/jTest/HashSetTest$3.class | Bin 0 -> 609 bytes .../Kotlin-Demo/jTest/HashSetTest$4.class | Bin 0 -> 609 bytes .../Kotlin-Demo/jTest/HashSetTest.class | Bin 0 -> 2407 bytes .../Kotlin-Demo/jTest/PropertiesTest.class | Bin 0 -> 710 bytes .../Kotlin-Demo/jTest/TreeMapTest$1.class | Bin 0 -> 750 bytes .../Kotlin-Demo/jTest/TreeMapTest$2.class | Bin 0 -> 750 bytes .../Kotlin-Demo/jTest/TreeMapTest.class | Bin 0 -> 2353 bytes .../Kotlin-Demo/test1/BasicSyntax.class | Bin 0 -> 1050 bytes .../Kotlin-Demo/test1/BasicSyntaxKt.class | Bin 0 -> 3843 bytes test1/BasicSyntax.kt | 79 +++++++++++ 37 files changed, 742 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/Kotlin-Demo.iml create mode 100644 .idea/codeStyles/codeStyleConfig.xml create mode 100644 .idea/kotlinc.xml create mode 100644 .idea/libraries/KotlinJavaRuntime.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/uiDesigner.xml create mode 100644 BasicSyntax-Loop.kt create mode 100644 jTest/FIleCopyBase.java create mode 100644 jTest/HasMapTest.java create mode 100644 jTest/HashSetTest.java create mode 100644 jTest/TreeMapTest.java create mode 100644 out/production/Kotlin-Demo/.idea/.gitignore create mode 100644 out/production/Kotlin-Demo/.idea/Kotlin-Demo.iml create mode 100644 out/production/Kotlin-Demo/.idea/codeStyles/codeStyleConfig.xml create mode 100644 out/production/Kotlin-Demo/.idea/kotlinc.xml create mode 100644 out/production/Kotlin-Demo/.idea/libraries/KotlinJavaRuntime.xml create mode 100644 out/production/Kotlin-Demo/.idea/misc.xml create mode 100644 out/production/Kotlin-Demo/.idea/modules.xml create mode 100644 out/production/Kotlin-Demo/.idea/uiDesigner.xml create mode 100644 out/production/Kotlin-Demo/BasicSyntax_LoopKt.class create mode 100644 out/production/Kotlin-Demo/META-INF/Kotlin-Demo.kotlin_module create mode 100644 out/production/Kotlin-Demo/jTest/FIleCopyBase.class create mode 100644 out/production/Kotlin-Demo/jTest/HasMapTest.class create mode 100644 out/production/Kotlin-Demo/jTest/HashSetTest$1.class create mode 100644 out/production/Kotlin-Demo/jTest/HashSetTest$2.class create mode 100644 out/production/Kotlin-Demo/jTest/HashSetTest$3.class create mode 100644 out/production/Kotlin-Demo/jTest/HashSetTest$4.class create mode 100644 out/production/Kotlin-Demo/jTest/HashSetTest.class create mode 100644 out/production/Kotlin-Demo/jTest/PropertiesTest.class create mode 100644 out/production/Kotlin-Demo/jTest/TreeMapTest$1.class create mode 100644 out/production/Kotlin-Demo/jTest/TreeMapTest$2.class create mode 100644 out/production/Kotlin-Demo/jTest/TreeMapTest.class create mode 100644 out/production/Kotlin-Demo/test1/BasicSyntax.class create mode 100644 out/production/Kotlin-Demo/test1/BasicSyntaxKt.class create mode 100644 test1/BasicSyntax.kt diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/Kotlin-Demo.iml b/.idea/Kotlin-Demo.iml new file mode 100644 index 0000000..f392c3c --- /dev/null +++ b/.idea/Kotlin-Demo.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..a55e7a1 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml new file mode 100644 index 0000000..0dd4b35 --- /dev/null +++ b/.idea/kotlinc.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/.idea/libraries/KotlinJavaRuntime.xml b/.idea/libraries/KotlinJavaRuntime.xml new file mode 100644 index 0000000..409da39 --- /dev/null +++ b/.idea/libraries/KotlinJavaRuntime.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..6f29fee --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..c1b85cc --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/uiDesigner.xml b/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/BasicSyntax-Loop.kt b/BasicSyntax-Loop.kt new file mode 100644 index 0000000..277c222 --- /dev/null +++ b/BasicSyntax-Loop.kt @@ -0,0 +1,55 @@ +val items = listOf("apple", "banana", "kiwifruit") + +fun main() { + for (item in items) { + println(item) + } + + println("----------------") + + for (index in items.indices) { + println("item 在 $index 是 ${items[index]}") + } + + println("----------------像是Switch--------------") + println(describe(1)) + println(describe("Hello")) + println(describe(1000L)) + println(describe(2)) + println(describe("other")) + + println("----------------Ranges------------") + rangeTest() + + println("----------------for..in..------------") + forTest() +} + +// 使用when +fun describe(obj: Any): Any = when (obj) { + 1 -> "是一" + "Hello" -> "Greeting" + is Long -> "Long" + !is String -> "Not a string" + else -> "Unknown" +} + +// 范围测试 +fun rangeTest() { + val x = 10 + val y = 100 + + if (x in 1..y + 1) { + println("1 在这个范围里") + } + + if (-1 !in 1..y + 1) { + println("-1 不在这个范围里") + } +} + +fun forTest() { + for (x in 1..5) { + println(x) + } +} \ No newline at end of file diff --git a/jTest/FIleCopyBase.java b/jTest/FIleCopyBase.java new file mode 100644 index 0000000..43badeb --- /dev/null +++ b/jTest/FIleCopyBase.java @@ -0,0 +1,69 @@ +package jTest; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.Map; + +public class FIleCopyBase { + public static void main(String[] args) throws IOException { + Path source = Path.of("D:\\Project\\demo\\source\\神偷奶爸4.ts"); + Path target = Path.of("D:\\Project\\demo\\target\\神偷奶爸4.ts"); + + // 复制速度很快 + Path copyPath = Files.copy(source, target); + System.out.println("输出复制完成后的路径" + copyPath); + + // 删除文件,文件不存在或者目录不存在会抛出异常 + Files.delete(target); + + // 删除文件如果存在就删除,不存在不会抛出异常 + Files.deleteIfExists(target); + + // 移动文件 + Path movePath = Files.move(source, target); + System.out.println("输出移动完成后的路径" + movePath); + + // 判断文件是否存在 + boolean exists = Files.exists(source); + System.out.println(exists); + + // 是否为隐藏文件 + boolean hidden = Files.isHidden(target); + System.out.println(hidden); + + // 判断是否为目录 + boolean directory = Files.isDirectory(target); + System.out.println(directory); + + // 检查指定路径是否可读取。当文件或目录具有读取权限时,Files.isReadable() 方法将返回 true,否则返回 false。 + boolean readable = Files.isReadable(target); + System.out.println(readable); + + // 表示是否是可执行的文件 + boolean executable = Files.isExecutable(target); + System.out.println(executable); + + // 是否表示一个常规文件,是指不是目录或符号链接的文件 + boolean regularFile = Files.isRegularFile(target); + System.out.println(regularFile); + + // 检查文件是否相同 + Files.copy(target, source); + boolean sameFile = Files.isSameFile(target, source); + System.out.println(sameFile); + + // 是否表示一个符号链接 + boolean symbolicLink = Files.isSymbolicLink(target); + System.out.println(symbolicLink); + + // 文件按字节的大小 + long size = Files.size(target); + System.out.println(size); + + // 读取指定文件的属性,如果第二个参数为空字符串,将返回所有基本文件属性。 + // {lastAccessTime=2024-08-10T15:37:23.5577285Z, lastModifiedTime=2024-08-10T08:18:39.377836Z, size=1158625012, creationTime=2024-08-10T15:12:56.5838403Z, isSymbolicLink=false, isRegularFile=true, fileKey=null, isOther=false, isDirectory=false} + Map stringObjectMap = Files.readAttributes(source, "basic:*"); + System.out.println(stringObjectMap); + } +} diff --git a/jTest/HasMapTest.java b/jTest/HasMapTest.java new file mode 100644 index 0000000..18dd5b4 --- /dev/null +++ b/jTest/HasMapTest.java @@ -0,0 +1,43 @@ +package jTest; + +import java.util.HashMap; + +public class HasMapTest { + public static void main(String[] args) { + // 如果使用的是 Map 没用直接的 forEach + HashMap hashMap = new HashMap<>(); + hashMap.put("a", 1); + hashMap.put("b", 2); + hashMap.put("c", 3); + hashMap.put("d", 4); + hashMap.put("e", 5); + + // 如果在这个Map中没用找到这个键返回默认的值 666 + System.out.println(hashMap.getOrDefault("n", 666)); + + // 拿到a的键 + System.out.println(hashMap.get("a")); + + // 是否包含键 a + System.out.println(hashMap.containsKey("a")); + + // 是否包含值 + System.out.println(hashMap.containsValue(1)); + + // 遍历 hashMap + hashMap.forEach((s, o) -> { + System.out.println("key:" + s); + System.out.println("value:" + o); + }); + hashMap.entrySet().forEach(System.out::println); + + // 将所以的键都添加到 hashMap 中 + HashMap addAllMap = new HashMap<>(); + addAllMap.put("f", 6); + addAllMap.put("g", 7); + addAllMap.put("h", 8); + addAllMap.put("i", 9); + hashMap.putAll(addAllMap); + System.out.println(hashMap); + } +} diff --git a/jTest/HashSetTest.java b/jTest/HashSetTest.java new file mode 100644 index 0000000..13d1eb0 --- /dev/null +++ b/jTest/HashSetTest.java @@ -0,0 +1,72 @@ +package jTest; + +import java.util.HashSet; +import java.util.NavigableSet; +import java.util.SortedSet; +import java.util.TreeSet; + +public class HashSetTest { + public static void main(String[] args) { + // 删除重复的元素 + HashSet hashSet = new HashSet<>() { + { + add("a"); + add("b"); + add("c"); + add("d"); + add("e"); + add("a"); + } + }; + System.out.println(hashSet);// [a, b, c, d, e] + hashSet.forEach(System.out::println); + + // TreeSet 会自动排序,即使是乱序也会自动排序 + TreeSet treeSet = new TreeSet<>() { + { + add("a"); + add("b"); + add("d"); + add("e"); + add("c"); + } + }; + System.out.println(treeSet);// [a, b, c, d, e] + treeSet.forEach(System.out::println); + + // 排序Tree + SortedSet sortedSet = new TreeSet<>() {{ + add("a"); + add("b"); + add("d"); + add("e"); + add("c"); + }}; + System.out.println(sortedSet);// [a, b, c, d, e] + sortedSet.forEach(System.out::println); + + NavigableSet navigableSet = new TreeSet<>() {{ + add("a"); + add("b"); + add("d"); + add("e"); + add("c"); + }}; + System.out.println(navigableSet);// [a, b, c, d, e] + // 大于a的元素,没用返回null + System.out.println(navigableSet.higher("a"));// b + // 小于a的元素,没用返回null + System.out.println(navigableSet.lower("a"));// null + // 小于等于b的元素,没有返回null + System.out.println(navigableSet.floor("b"));// b + // 大于等于 a 的元素,没用返回null + System.out.println(navigableSet.ceiling("a"));// a + + // 删除第一个元素 + navigableSet.pollFirst(); + System.out.println(navigableSet);// [b, c, d, e] + // 删除最后一个元素 + navigableSet.pollLast(); + System.out.println(navigableSet);// [b, c, d] + } +} diff --git a/jTest/TreeMapTest.java b/jTest/TreeMapTest.java new file mode 100644 index 0000000..e9b3587 --- /dev/null +++ b/jTest/TreeMapTest.java @@ -0,0 +1,40 @@ +package jTest; + +import java.util.SortedMap; +import java.util.TreeMap; + +public class TreeMapTest { + public static void main(String[] args) { + TreeMap treeMap = new TreeMap<>() {{ + put("c", 3); + put("a", 1); + put("b", 2); + put("e", 5); + put("d", 4); + }}; + + // 会自动排序 + System.out.println(treeMap); + + // 遍历集合 + treeMap.forEach((key, value) -> { + System.out.println("key:" + key); + System.out.println("value:" + value); + }); + + + SortedMap sortedMap = new TreeMap<>() {{ + put("c", 3); + put("a", 1); + put("b", 2); + put("e", 5); + put("d", 4); + }}; + + // 拿到第一个值 + System.out.println(sortedMap.firstKey()); + + // 最后一个值 + System.out.println(sortedMap.lastKey()); + } +} diff --git a/out/production/Kotlin-Demo/.idea/.gitignore b/out/production/Kotlin-Demo/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/out/production/Kotlin-Demo/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/out/production/Kotlin-Demo/.idea/Kotlin-Demo.iml b/out/production/Kotlin-Demo/.idea/Kotlin-Demo.iml new file mode 100644 index 0000000..f392c3c --- /dev/null +++ b/out/production/Kotlin-Demo/.idea/Kotlin-Demo.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/out/production/Kotlin-Demo/.idea/codeStyles/codeStyleConfig.xml b/out/production/Kotlin-Demo/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..a55e7a1 --- /dev/null +++ b/out/production/Kotlin-Demo/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/out/production/Kotlin-Demo/.idea/kotlinc.xml b/out/production/Kotlin-Demo/.idea/kotlinc.xml new file mode 100644 index 0000000..0dd4b35 --- /dev/null +++ b/out/production/Kotlin-Demo/.idea/kotlinc.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/out/production/Kotlin-Demo/.idea/libraries/KotlinJavaRuntime.xml b/out/production/Kotlin-Demo/.idea/libraries/KotlinJavaRuntime.xml new file mode 100644 index 0000000..409da39 --- /dev/null +++ b/out/production/Kotlin-Demo/.idea/libraries/KotlinJavaRuntime.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/out/production/Kotlin-Demo/.idea/misc.xml b/out/production/Kotlin-Demo/.idea/misc.xml new file mode 100644 index 0000000..6f29fee --- /dev/null +++ b/out/production/Kotlin-Demo/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/out/production/Kotlin-Demo/.idea/modules.xml b/out/production/Kotlin-Demo/.idea/modules.xml new file mode 100644 index 0000000..c1b85cc --- /dev/null +++ b/out/production/Kotlin-Demo/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/out/production/Kotlin-Demo/.idea/uiDesigner.xml b/out/production/Kotlin-Demo/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/out/production/Kotlin-Demo/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/out/production/Kotlin-Demo/BasicSyntax_LoopKt.class b/out/production/Kotlin-Demo/BasicSyntax_LoopKt.class new file mode 100644 index 0000000000000000000000000000000000000000..bedb36c4ff716ca010547ce4d249e78c3f8b5322 GIT binary patch literal 3394 zcmai0>vtPR75|MSODkDPpzQ0HNRL;Vb9B_oOF$;|~ag->lY_WCxHf&7GP1 z{M~zJ=EHx#_Xhy|cwaz0sM$s?d&YFMxl+=4_nS~xlkZigHf>+TWu+dFd||2&?pcnQiFiMqjN-HeZ5N|Y@pNBQqml& zB+y#tA0u(s2cl?#+K3pM8CO-q@_q;{0-;IG9@gg^*V5;s*o4iEXhj& z6}475WBwEdq{cyk_Kx)bX51$k?`8QUKDzJ*%^qMBEL;gioumgw6o+u1jP8EciepuL z5vb3n=V25N;6bTAEs$J=TKDyHFVJB2wBh6?>-Q842{cuaOPh{9Au&6`OwDSAvVL@2 zR%e}i9us3fienKB<1_RxuiLqjF~-E~ss(U4uWM5sMHVL_Y?X%z$b)*JU@7=)1KXb; z|BdC2aUsuG=0pgitg4QOY7v&}t`}d3;1PV0dMsyBFDZCbV0(R_-QCA|WaxJ7s)8|= zK}oKk&}}D*yetkM7{kt5K1q*TrJf$c?CGi9P%uH5xK$B1D&kWtQCVAT*_x=mJjt`e z%GLV^a!d1h!3EPQfr!Q?tbs+e0szS|LT8*(*E+?GSiIwB#oB+_ZNH9n(r$ zQ75Co?%UwK*0Ag>2jvKC%raeCNx%QGvR3%N;>!u-$ufsCQv7i?3(M)+(pd#hP}Kt^ zU3YkXD)8-JX?w)Faq z^XIO={LVj~KCj?ufz920iEB&G-EQ|=#8TpUhSpiA?g{doJVBn9l{aDzFfg(nB|#si|DD|nINk7*|V6kK5aOdF?-@lx4v6ucym@DiD`3I$$H z?!9rSO3O>^6)Gt3T9Tc$v(CR|tSc^8@2@C+jGsjCBm7ig$EwZ$a*s7-JV%b`j+WOP zjklJsIO}I~3HcM2KOkz;lJIeJ&X80usXR~9>8oeAMXsKW_+klu*GGJcpQBt*d?ff) z{PFd%hPbacxF;A3$uS;`DICKbBi`63$L*Ua7+2JQ>g)COiVrRZ6{?O06n`x6!KGkS zn%pC#H;qGX8+6~N7cHiw<_XX(p8!46JS)RlW5U#&a*1ua<#^e2jG~@4XARpJE9eKR z*EKVH$jXyxL&h-m;c{_IFP+fHBd{*(Xu0Vl+Ke|>GgeM3jA$i8?t62DiWE?*wwX& zk1gE#NbMnginM>g6<|gN<6ACb@B8RK`7ZXVpIpSJv;vrA^ zNr;78AF5KZR2Epm@gf_Zn2<*35`n z@Mpe^{({Z;EA#O;#PKe*v=YsBW~e}E!F(Qs35)A(@*?vxc7Z$+^8-osu_c^NX1Xc> zd}$tv`sD?5bx8=^*;f~^wd+rKMDBcT0ZpV6FOfdCfClv`neIw#8_;kQn?ne!Yiv9a zLc)z}8~q4kDSth*zdiVSB!-fH^@rJHK%LJf8`PJx$tC>kZA2@2YFpNaE0po!ExgC^I5oV= z!uPiPzKk6@EPmVdFRW?I_mS2-|qW{co@lw2^h`85@R6kRfm5 G&Hn(I@F_gW%Dj@qig=&=`~vS1pg3zuYH^975HFIX KcZm{%76Sl>?+-8l literal 0 HcmV?d00001 diff --git a/out/production/Kotlin-Demo/jTest/FIleCopyBase.class b/out/production/Kotlin-Demo/jTest/FIleCopyBase.class new file mode 100644 index 0000000000000000000000000000000000000000..b74b7d86dd27b873eb338798dd889cb1a824c352 GIT binary patch literal 2998 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 Vd*ZeK6rbbE<`#T~ukkIG{tHQBD1-n2 literal 0 HcmV?d00001 diff --git a/out/production/Kotlin-Demo/jTest/HashSetTest$1.class b/out/production/Kotlin-Demo/jTest/HashSetTest$1.class new file mode 100644 index 0000000000000000000000000000000000000000..24574f2dd409b01f06edc154953a2629eab15e04 GIT binary patch literal 620 zcmZuuO;6iE5Pcg0F^M6G0~A^cgwm4aK-6;(5<;y&O6egeNO0QNt7Idymh5%^7Z;E? z@B{c!sLwG-h}M$l?TqHl$D60;herU%Xq8dGTnR-N^H>n5PvsxkO|1^Qr!tugloePw z)JEGQfw@+D=)e&WvWzk+CAcn@uq@D+UZ}*rQnL5ncjn6=5Lj*XXGKG4#@*kesq$^F zedVCWIwJ=j!FRAi2pp^tltA$$3JBG{HtIaR8L9X}jzUJfe&ow=C}W-ZFTtXn=!A{> z|CypEusG0TBW)U!zn{i z6(IQYM#K+%rHp2gZs#7N*&2XFfV2vie;M*+HBpV!>3KIGK1**%SVY4M;5b z06q$F9J7epjx_ho+&TAk=I#CE6~GS!6_haLpzL89GXhIP`5+r3tK&u|RjRG5z|5I8 z+MWwc1+}gVS3t-LDwuQNdH8~Pf#qRGWwvoGvjIc$^T8?kGKvINgVs1{EKR@ht2b1k zZPtFfSY)1_3!f0VSRp7EYlKjse33*-V4$2Cgfi~RROk0kXW0&P z#zL+CbkP);ZR@^~c9b&yxaehaz_W?=+BVgu-#lkjrJan@P+jS~?Bc{^C;2q&?b3vC zl9B#X*+CLH*vsYnTL%vZIOIV0QX7G_;LpF+YFz>MmYQ8B8RhnFj8W-DEVE2y*rCuR zeib0N`A5XBJPqm1Jwg2$qV79Sn7ym}3k56{uw1}u4v*xPuufZrL%V@8zF`hq@bR6u rDl2W{n0AA&UXdG{{Ncy literal 0 HcmV?d00001 diff --git a/out/production/Kotlin-Demo/jTest/HashSetTest$3.class b/out/production/Kotlin-Demo/jTest/HashSetTest$3.class new file mode 100644 index 0000000000000000000000000000000000000000..67a23b1094fd26a62b1e67466f9c40a91d9d248d GIT binary patch literal 609 zcmZuu%TC)s6g?9Hc7n^p0s4gU#tBukU>Sr|p;lB%VUZ}6U^THv$wX!>*%SVY4M;5d z0sW||XKEHvTT7mE=jfjMIP>$@(+>cj5Y!@SVLlEEvmINA;zA9|{LKb66T)cn6e3>Ky>rwYl(NvmI`)W8* zvF$XkeXOv~&__r}e5?_aj}1aBP(9BQC9vGpMqN&Chbr&OVM-?KX0c2MGS}|@Ojhk! z7i`r1&lDYjT2GIRw9}mWqjHwn1y5(j>)BkJQRj@RdM}&ivHGH2+m)HkKDuo<+h-G} zS;6#g%8s+d!>+UMZyy5ey3fdifHAdy)V{aEt9XGnEQXORl zDo5IAdn_;&)Os#l0U@iXV%CA@;RRj_ERMP=vyGO_hNR^F);{xP6bUQ^?fas!G=s*k z{z!$kS^MK+o^|>zd_v^n6+yXJCWHdzlO$3Cb8T(Z+4#J#(yr{sjQH&&lyOg{I)6U| z%XX+UHfldJMN?p=qX$OXaZ3JnG0WtFM-$_9Y^u$mc}!NdlZ?|){m^;a`H9VT@@+WV zcN4}*#`IHVhe_mMBbV>74j#7fi3^=eZ3LEszfZf>dIIhlHESgq<@SCWqtcUDW|_+H zkwTaFRe<2-9}!>E8!?(kg8CIi-FGfA^SkcP6|hjiVgXAzTrjtU725Z3Xm?S@9%k_c xKE7fV`|NapZ5+}EyrMSV;4NR%ct=~p8o4=sU@pjC$0k1CN7l&%C#7sep8qABe{cW* literal 0 HcmV?d00001 diff --git a/out/production/Kotlin-Demo/jTest/HashSetTest.class b/out/production/Kotlin-Demo/jTest/HashSetTest.class new file mode 100644 index 0000000000000000000000000000000000000000..4b562866cb04b0003fb6455a259dd960ffd831b5 GIT binary patch literal 2407 zcma)8T~ixX7=8{3Y*^NkLc!ukMM`OaKrBUTo0d`#N;QPqAc*zrBsnAto85GGL&eW4 z|A9092EEg9sFWGU8Sm6Pz0=>~_@3P*?n3C8i=3SIecsRKJ?G@te;)q?;1<46(T13U zxQ2FgFeJD54$m0etYlV-TcYGLbX?a>-JM~GrAF5jBp7tyyo}LqSPzArzyifDO2usrOP*rWuq<0j zUf1x3lqe;k8{|RCmNn$D!q8c_3}aEZ9m?uVDxfhuViNqOhINKFexnrKPcVA{yJLPyZ2f`T{o!I+S~(>dh5d3vMcKp4%8aC$c6 zD9kn?`=iD0)(;zSF=P`Ycl~&^Gvp$S4AMLS89s{5={*6P4#f}Wd;(l8SPi=*7In#J zGDuhs!KCaVLsy=DFAGUKF_WCLEZ1>uUSAe&)hatl^mVsmCW+bZ4mc`YG!*P;c!-Y} zhCCX)$91f%rah z4C{w}<^FDHFMAS$?8!a4n?X;10)6O4KL#;?6o#mU=P^rf&=MxFf=LwVLD|L?IJk;0 z=|%V&H}DN^QVDbTg>LWPuz)|Xh`(^#>+iJRL%fUk$bSNV;(dHT9Zul~dM6`KSlUw?iXfD}r=d9uc@!wJBPepO{24k{V!iU;WMTn}29_)=V}&6%AsvI! z*U4Rv>X}5PX4iDHS0YqnjcUn|IPq@l7caW?3+L~zAhE?KgU-{x+U2U6=VV?y1@ zkfG>Ig4K!E=eCu0&J2heg>+Bv){(5cD}# z2_(mBf&qhd6bvLov8}W`i7)#y?25immU27rgx?dPO7;_@WiC|2u-JY^XoI29Q9~_E z9FqURgSd1Zn<>2=6DmD?<^_io$LR!d=*e#?5mK6TAt}dxQbJPuReOFAQGjDwlr%uV70QHzeV9Uif6U*qBW(<`}oIO=w{UReTs*cCbh2kXMP2zI&Zas9XR5 literal 0 HcmV?d00001 diff --git a/out/production/Kotlin-Demo/jTest/TreeMapTest$2.class b/out/production/Kotlin-Demo/jTest/TreeMapTest$2.class new file mode 100644 index 0000000000000000000000000000000000000000..541dbf1638ef4034fe41be433440b0b3a10824b3 GIT binary patch literal 750 zcmZuvO;6iE5Ph3Cv2jfk!dLnJh9oTn_0%d65<;Lx3gM6_95`*9C2VBY$X;{of9i!+ z9QXnKQB}twL>6Gl``*m%%)Fi1zyBVe0374MMha;YhJy^U3{wMs&nuCZUZoufanA1; zvNfrsK4M50OC1Xq19NTI_+Y|uFo};ZVIEigN?mEu7XgEL&%H=oTr!rppaq>jf zMjlfp3J#_*!!SK)i%`FmjrsOhs(BY_hHu40{6%*lTwQ(ZNfsF$vM@(-xrI*zT?>l@ z!oo5^kHI+cdx9a?kV-V8+pY-Oyz7yt(C}UEb$B3Sd*n3qjSLxP8}A6MGEB5&UvV7; z6#xBMT(Xa~gx;18r0TzOgCojgxBMt@#hHwS*d;WuhZ4RFJ$u+Ev?(f2NZ)_T3#i-x literal 0 HcmV?d00001 diff --git a/out/production/Kotlin-Demo/jTest/TreeMapTest.class b/out/production/Kotlin-Demo/jTest/TreeMapTest.class new file mode 100644 index 0000000000000000000000000000000000000000..f99ee51eebf2f3ac0639c28fdf3220c89e142af1 GIT binary patch literal 2353 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 { + println(array.contentToString()) + print("Hello ") + print("world!\n") + main() + println(42) + val sum = sum(1, 2) + println(sum) + val sum2 = sum2(1, 6) + println(sum2) + println("总和为:$sum and $sum2 那么sum和sum2相加为:${sum + sum2}") + + val basicSyntax = BasicSyntax(2.0000, 6.0) + println(basicSyntax.percent) + + // 模板字符串 + var a = 1 + val b = "a 是 $a" + a = 2 + val c = "${b.replace("是", "就是")},但是现在的a是 $a" + println(c) + + // 返回最大值 + println(BasicSyntax(1.0,2.0).maxOf(1, 2)) + println(BasicSyntax(1.0,2.0).maxOf2(1, 2)) + println(maxOf3(1, 2)) + + // 循环 + val items = listOf("11", "22", "23", "24", "25") + for (item in items) { + println(item) + } + for (index in items.indices) { + println(index) + } +} + +fun sum(a: Int, b: Int): Int { + return a + b +} + +fun sum2(a: Int, b: Int) = a + b + +class BasicSyntax(height: Double, length: Double) { + val percent = (height + length) * 2 + fun maxOf(a: Int, b: Int): Int { + if (a > b) { + return a + } else { + return b + } + } + + fun maxOf2(a: Int, b: Int): Int { + return if (a > b) { + a + } else { + b + } + } +} + +/* The comment starts here +/* contains a nested comment */ +and ends here. */ + + +fun maxOf3(a:Int,b:Int)=if (a>b)a else b