編集:ジェレミー・ウォールは、私が意図したよりも具体的な質問をしていたことを実感しました。ここにはより良いバージョンがあります。Goで任意の長さの値のシーケンスをマップキーとして使用する方法は?
私は、いくつかのタイプBの値を、等価が定義されているタイプAの値のシーケンスに関連付けるテーブルを表現したいとします。 Goでこれを行う最善の方法は何ですか?
もちろん、テーブルではGoマップを使用したいと思いますが、タイプAの値のシーケンスには何が使えますか?スライスは、Goのマップのキーとして使用することはできません。配列はできますが、配列の長さはその型の一部です。実行時に決定された長さのシーケンスを使用できることに興味があります。 (1)Aの配列を使用して最大長を宣言するか、(2)Aのスライスを使用して文字列にシリアル化してキーとして使用することができます(この手法はAwkとLuaのプログラマーにはよく知られています)。私が説明したものよりもGoのこの「機能」の方が良い方法がありますか?
私はA = intを持っていた質問の私のオリジナルバージョンに答えてJeremy Wallによって指摘されているように、オプション(2)は文字列への変換のためのルーンのスライスを使用できるので、ちょうどキャスト。
私は「」以下の答えましたが、問題は本当につながるにはあまりにも具体的ですどんな種類の答えにも。具体的にあなたが答えようとしている問題を知ることができます。 –
それはあまりにも具体的な問題についての良い点です。私の考えは、具体的な例を与えるためだけに整数を言及することでしたが、他の型ではうまくいかない本当に良い、単純な解決法があるかもしれないとは考えていませんでした。 –