Clojure:
文字列の長さを求める
How to: (やり方)
Clojureでは、文字列の長さを得るのはシンプルです。
(count "こんにちは") ; 5文字の文字列
;; => 5
(count "") ; 空の文字列
;; => 0
(count "Clojureは楽しい!")
;; => 11
サンプル出力は、コメントの後に示されます。
Deep Dive (深掘り)
歴史的に見ると、文字列の長さを数える機能は多くの言語にとって基本です。Clojureではcount
関数は文字列に対してだけでなく、リストやベクタなどのコレクションに対しても利用可能です。
他の方法としてlength
やsize
といった関数がありますが、Clojureではこれらは存在しません。Clojureのcount
はJavaのString.length()
メソッドを背後で使用していることを覚えておくと良いでしょう。
実装の詳細については、count
はコレクションの実際の型に基づいて、最適な方法で長さを計算します。たとえば、文字列では直接Javaのlength()
が利用されますが、リストでは要素を一つずつ数えていきます。
See Also (参照)
- Clojure公式ドキュメントの
count
関数: https://clojuredocs.org/clojure.core/count - Java平台のStringクラス: https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#length()