1. ホーム
  2. vb.net

宣言時に辞書にキー/値を追加する

2023-08-10 11:54:19

質問

今日はとても簡単だと思います。 C#では、その。

Dictionary<String, String> dict = new Dictionary<string, string>() { { "", "" } };

しかし、vbでは、以下はうまくいきません。

Public dict As Dictionary(Of String, String) = New Dictionary(Of String, String) (("",""))

宣言時に追加する方法があるのは確かなのですが、方法がよくわかりません。 そして、はい、私は他の時間ではなく、宣言時にそれらを追加したいです:) だから、それが可能であることを望む。 みんなありがとう。

もやってみました。

Public dict As Dictionary(Of String, String) = New Dictionary(Of String, String) ({"",""})

そして...

Public dict As Dictionary(Of String, String) = New Dictionary(Of String, String) {("","")}

そして...

Public dict As Dictionary(Of String, String) = New Dictionary(Of String, String) {{"",""}}

どのように解決するのですか?

VB.NET 10で可能です。

Dim dict = New Dictionary(Of Integer, String) From {{ 1, "Test1" }, { 2, "Test1" }}

残念ながら、IRC VS 2008 は VB.NET 9 コンパイラを使用しており、この構文をサポートしていません。

そして、興味を持つかもしれない人のために、舞台裏で何が起こっているのかを紹介します (C#)。

Dictionary<int, string> VB$t_ref$S0 = new Dictionary<int, string>();
VB$t_ref$S0.Add(1, "Test1");
VB$t_ref$S0.Add(2, "Test1");
Dictionary<int, string> dict = VB$t_ref$S0;