mirror of
				https://github.com/krahets/hello-algo.git
				synced 2025-11-04 14:18:20 +08:00 
			
		
		
		
	Add kotlin code block for chapter_hashing (#1195)
This commit is contained in:
		@ -346,7 +346,29 @@ $$
 | 
				
			|||||||
=== "Kotlin"
 | 
					=== "Kotlin"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    ```kotlin title="built_in_hash.kt"
 | 
					    ```kotlin title="built_in_hash.kt"
 | 
				
			||||||
 | 
					    val num = 3
 | 
				
			||||||
 | 
					    val hashNum = num.hashCode()
 | 
				
			||||||
 | 
					    // 整数 3 的哈希值为 3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    val bol = true
 | 
				
			||||||
 | 
					    val hashBol = bol.hashCode()
 | 
				
			||||||
 | 
					    // 布尔量 true 的哈希值为 1231
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    val dec = 3.14159
 | 
				
			||||||
 | 
					    val hashDec = dec.hashCode()
 | 
				
			||||||
 | 
					    // 小数 3.14159 的哈希值为 -1340954729
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    val str = "Hello 算法"
 | 
				
			||||||
 | 
					    val hashStr = str.hashCode()
 | 
				
			||||||
 | 
					    // 字符串“Hello 算法”的哈希值为 -727081396
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    val arr = arrayOf<Any>(12836, "小哈")
 | 
				
			||||||
 | 
					    val hashTup = arr.hashCode()
 | 
				
			||||||
 | 
					    // 数组 [12836, 小哈] 的哈希值为 189568618
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    val obj = ListNode(0)
 | 
				
			||||||
 | 
					    val hashObj = obj.hashCode()
 | 
				
			||||||
 | 
					    // 节点对象 utils.ListNode@1d81eb93 的哈希值为 495053715
 | 
				
			||||||
    ```
 | 
					    ```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== "Zig"
 | 
					=== "Zig"
 | 
				
			||||||
 | 
				
			|||||||
@ -270,7 +270,24 @@
 | 
				
			|||||||
=== "Kotlin"
 | 
					=== "Kotlin"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    ```kotlin title="hash_map.kt"
 | 
					    ```kotlin title="hash_map.kt"
 | 
				
			||||||
 | 
					    /* 初始化哈希表 */
 | 
				
			||||||
 | 
					    val map = HashMap<Int,String>()
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    /* 添加操作 */
 | 
				
			||||||
 | 
					    // 在哈希表中添加键值对 (key, value)
 | 
				
			||||||
 | 
					    map[12836] = "小哈"
 | 
				
			||||||
 | 
					    map[15937] = "小啰"
 | 
				
			||||||
 | 
					    map[16750] = "小算"
 | 
				
			||||||
 | 
					    map[13276] = "小法"
 | 
				
			||||||
 | 
					    map[10583] = "小鸭"
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    /* 查询操作 */
 | 
				
			||||||
 | 
					    // 向哈希表中输入键 key ,得到值 value
 | 
				
			||||||
 | 
					    val name = map[15937]
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    /* 删除操作 */
 | 
				
			||||||
 | 
					    // 在哈希表中删除键值对 (key, value)
 | 
				
			||||||
 | 
					    map.remove(10583)
 | 
				
			||||||
    ```
 | 
					    ```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== "Zig"
 | 
					=== "Zig"
 | 
				
			||||||
@ -471,7 +488,19 @@
 | 
				
			|||||||
=== "Kotlin"
 | 
					=== "Kotlin"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    ```kotlin title="hash_map.kt"
 | 
					    ```kotlin title="hash_map.kt"
 | 
				
			||||||
 | 
					    /* 遍历哈希表 */
 | 
				
			||||||
 | 
					    // 遍历键值对 key->value
 | 
				
			||||||
 | 
					    for ((key, value) in map) {
 | 
				
			||||||
 | 
					        println("$key -> $value")
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    // 单独遍历键 key
 | 
				
			||||||
 | 
					    for (key in map.keys) {
 | 
				
			||||||
 | 
					        println(key)
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    // 单独遍历值 value
 | 
				
			||||||
 | 
					    for (_val in map.values) {
 | 
				
			||||||
 | 
					        println(_val)
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
    ```
 | 
					    ```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
=== "Zig"
 | 
					=== "Zig"
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user