簡體   English   中英

Clojure-地圖功能

[英]Clojure - map function

眾所周知, (map f [abc])等效於[(fa) (fb) (fc)]

我的問題是: (map #(- (int %) (int \\0)) "1234")的評估結果是(1 2 3 4) ,為什么它返回應用#(- (int %) (int \\0))到“ 1234”的每個數字,而不是整個字符串“ 1234”? 我應該如何理解此代碼示例?

map在第一個參數之后對所有參數調用seq seq將字符串轉換為字符序列。

Clojure可以將字符串視為字符序列。 這很有用,因為您可以:

  • 在字符串上映射事物
  • 分割字符串
  • 通過索引獲取位置
  • 做其他所有序列要做的事情。

不得不記住通過將序列操縱表達式包裝在對str的調用中來將結果序列放回字符串中可能會有些煩人。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM