0

我讨厌数组!我不知道如何创建或使用它们:/

所以我想知道你是否可以帮助我...

我对 Small Basic 中的数组有基本的了解,目前我正在学校学习,但是 Small Basic 确实限制了你可以做什么,因为它是一种高级语言。

我目前正在使用字符串和数组制作西班牙语动词的共轭器。

你能帮忙把这个 Small Basic 代码翻译成 C# 吗?

这是代码:

irrVerbPreterit["ser"] = "ser"
irrVerbPreterit["ser"]["verb1stpreterit"] = "fui"
irrVerbPreterit["ser"]["verb2ndpreterit"] = "fuiste"
irrVerbPreterit["ser"]["verb3rdpreterit"] = "fue"
irrVerbPreterit["ser"]["verb4thpreterit"] = "fuimos"
irrVerbPreterit["ser"]["verb5thpreterit"] = "fuisteis"
irrVerbPreterit["ser"]["verb6thpreterit"] = "fueron"

另外,我将如何查看动词是否在数组中?在 Small Basic 中,我有...

If(Array.ContainsIndex(irrVerbPresent, verb)) Then 

如果你能帮我做到这一点,那就太好了!

亲切的问候,~本

4

4 回答 4

1

我会创建一个动词类来让事情变得简单:

class Verb
{
    public string Infinitive;
    public string verb1stpreterit;
    public string verb2ndpreterit;
    public string verb3rdpreterit;
    .....

} //this class substitutes the array's second coordinate, making it a lot easier to understand the code.

可以这样使用它:

Verb Ser = new Verb();
Ser.Infinitive = "ser";
Ser.verb1stpreterit = "fui";
....
Verb Estar = new Verb();
Estar.Infinitive = "estar";
Estar.verb1stpreterit = "estive";
....

然后有一本字典:

Dictionary<string, Verb> Verbs = new Dictionary<string, Verb>();
Verbs.Add(Ser.Infinitive, Ser); //this is the substitute for the arrays first dimension.
Verbs.Add(Estar.Infinitive, Estar);

You get the verbs by their infinitive.
于 2013-05-09T20:55:33.843 回答
0

您要查找的 C# 名称是Dictionary。我不会为你做所有的事情,但这里有一个如何使用字典的快速示例。

  Dictionary<string,string> dic = new Dictionary<string,string>();
  dic["verb1stpreterit"] = "fui";
  bool contains = dic.ContainsKey("verb1stpreterit");

对于你正在做的事情,看起来你想把一本字典放在另一本字典里。

于 2013-05-09T20:54:32.520 回答
0

只是 Small Basic 专家查看如何在 c# 中同样检查和实现请求的代码行的另一种方法

小基本款

If(Array.ContainsIndex(irrVerbPresent, 动词)) 然后

C#(假设我们在c#中有一个字符串数组,即'verbArray'和'toSearch'变量是要搜索的元素)

if (Array.Exists(verbArray, eachElement => eachElement == toSearch)) { //我们必须有 toSearch }

于 2013-05-09T21:18:41.297 回答
-1

您可以使用 List 而不是数组(如果您不喜欢它们),因为它们的大小是动态的。例如,您还可以有一个包含字典的列表

List<String> myList = new List<String>();
myList.Add("hello world");
于 2013-05-09T20:50:29.897 回答