hash = [
{"field1", "field2", "field3", "field4"},
{1, 2, 3, 4}
{10, 20, 30, 40},
{100, 200, 300, 400}
]
こういうハッシュの書き方ができる言語ってないの?
アイちゃんかアスペの匂いがするな。
hash = [
{"field1":1, "field2":2, "field3":3, "field4":4},
{"field1":10, "field2":20, "field3":30, "field4":40},
{"field1":100, "field2":200, "field3":300, "field4":400},
]
これほど冗長な書き方はないだろう。
何回fieldを書かせれば気が済むのか?
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
京都大学霊長類研究所
ハッシュじゃなくて連想配列だろいい加減にしろ
つ
scala> List(1,10,100).map{x=>(List("field1","field2","field3") zip (1 to 3).map(_ * x)).toMap}
res3: List[scala.collection.immutable.Map[java.lang.String,Int]] = List(Map(field1 -> 1, field2 -> 2, field3 -> 3), Map(field1 -> 10, field2 -> 20, field3 -> 30), Map(field1 -> 100, field2 -> 200, field3 -> 300))
>>6 あー、馬鹿には例題が悪かったね。
hash = [
{"field1", "field2", "field3", "field4"},
{5641, 0, 9441, 789164748}
{43, 83, 54, 96},
{784113, 9168, 3, 23}
]
つ
List(
List(5641, 0, 9441, 789164748),
List(43, 83, 54, 96),
List(784113, 9168, 3, 23)
).map{x=>List("field1","field2","field3","field4").zipWithIndex.map(y=>y._1->x(y._2)).toMap}
関数化してみた。うだうだ言ってないで頭を使え!
def foo[A,B](keyList: A*)(valList: List[B]*) =
valList.map{x=>keyList.zipWithIndex.map(y=>y._1->x(y._2)).toMap}
foo("field1","field2","field3","field4")(
List(5641, 0, 9441, 789164748),
List(43, 83, 54, 96),
List(784113, 9168, 3, 23)
)
このデータ構造どういったときに使うのだろう
[0]["field1"]とか[2]["field2"]とかで指定するのなら、設計おかしいんじゃないの?
>>10 RDBMSやCSV形式だろ。
こんなことにも気づかないのは
経験の差か。
>>11 お前には経験があると自慢してんのか? お〜ん?
お前が思いつかなかったのかどうかのほうが
今は重要だよw
こんな事も解決出来ない
>>1 には
経験もスキルも無い事は確実だがな。
struct {
int field1; int field2; int field3; int field4;
} xxx = {
{1, 2, 3, 4},
{10, 20, 30, 40},
{100, 200, 300, 400}
}
Cでいいじゃん
間違えた
struct {
int field1; int field2; int field3; int field4;
} xxx[] = {
{1, 2, 3, 4},
{10, 20, 30, 40},
{100, 200, 300, 400}
};
Cだと総称型定義出来ないし、動的に値追加出来ないよね
そもそもそれHashじゃ無いし