这段代码有效,但我不明白它背后的原因(它只是程序的一部分)我主要担心的是我的词典是如何充满阅读方法的?我没有使用任何引用,但不知何故void方法返回一个值,它是如何可能的?
我正在阅读3个不同的文件。并且不知何故,他们都被放在单个词典中,有人能告诉我确切的行吗?
Dictionary<string, Atstovybe> Atstovybes = new Dictionary<string, Atstovybe>();
Atstovybes.Add("InfoSA", new Atstovybe("InfoSA"));
Atstovybes.Add("Statius", new Atstovybe("Statius"));
Atstovybes.Add("VfSA", new Atstovybe("VfSA"));
string[] filepaths = Directory.GetFiles(Directory.GetCurrentDirectory(), "*.txt");
foreach (string file in filepaths)
{
SkaitytiDuomenis(file, Atstovybes);
}
public static void SkaitytiDuomenis(string file, Dictionary<string, Atstovybe> Atstovybes)
{
string AtstovybePav = null;
using (StreamReader reader = new StreamReader(@file))
{
string line = null;
line = reader.ReadLine();
if (line != null)
{
AtstovybePav = line;
}
Atstovybe atstovybe = Atstovybes[AtstovybePav];
while (null!= (line=reader.ReadLine()))
{
string[] values = line.Split(';');
string tema = values[0];
int sudetingumas = int.Parse(values[1]);
string autorius = values[2];
string tekstas = values[3];
string var1 = values[4];
string var2 = values[5];
string var3 = values[6];
string var4 = values[7];
string teisingas = values[8];
int balai = int.Parse(values[9]);
Klausimas klausimas = new Klausimas(tema, sudetingumas, autorius, tekstas, var1, var2, var3, var4, teisingas, balai);
atstovybe.Klausimai.Add(klausimas);
}
}
}
答案 0 :(得分:-2)
<强> atstovybe.Klausimai.Add(klausimas); 强> 是 SkaitytiDuomenis 方法中的行,它是通过引用添加值。