このようなキャストを行ううまくいっているのはなんですか?objから文字列へのseq.castタプル値
seq { yield (box "key", box "val") }
|> Seq.cast<string*string>
これは非常に醜いので:
seq { yield (box "key", box "val") }
|> Seq.map (fun (k,v) -> k.ToString(), v.ToString())
だけでなく、この:
seq { yield (box "key", box "val") }
|> Seq.map (fun (k,v) -> unbox<string>(k), unbox<string>(v))
は "VHS版" への道別のタプルにタプルありますか?あなたに少しよりよいそれを書くことができ
unBoxString(k、v)関数で除算するだけです。また、Boxedオブジェクト上で直接.ToString()を呼び出すことができます。 – s952163
提案していただきありがとうございますが、私はボックス化されたタプルで 'ToString()'を呼び出すことはできません。そして私は代わりに2つの文字列のタプルを取得したい。 – derwasp
はい、もちろんです。私はMarkの答えのように、文字列関数が使われているように意味しました。すでに行っているボックス化されたオブジェクトごとに呼び出す必要があります。私はそれが "醜い"と感じたら、ライナーを書くのは簡単だと思います。多くのヘルパー機能を持つことは慣用的です。その答えがその良い例です。 – s952163