Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何用“声明锯齿数组”;9HM.A2“;_C#_Unity3d - Fatal编程技术网

C# 如何用“声明锯齿数组”;9HM.A2“;

C# 如何用“声明锯齿数组”;9HM.A2“;,c#,unity3d,C#,Unity3d,我需要这样做: string[][] anordinaryname = new string[][] { new string[] {""}, new string[] {""}, new string[] {""}, new string[] {""}, }; 这: 我需要它的格式完全像这样,但9在开始和结束。中间出现了问题。有办法吗 我正在为我的学校制定一个时间表,这是为什么呢。这是一个周期,所以我需要用户输入一个输入字段“9HM.A2”,然后转到这个数组

我需要这样做:

 string[][] anordinaryname = new string[][]
{
    new string[] {""},
    new string[] {""},
    new string[] {""},
    new string[] {""},
};
这:

我需要它的格式完全像这样,但9在开始和结束。中间出现了问题。有办法吗


我正在为我的学校制定一个时间表,这是为什么呢。这是一个周期,所以我需要用户输入一个输入字段“9HM.A2”,然后转到这个数组来获取信息,因为它是如何在给出的时间表上显示的。这是一个学校项目。

你不能简单地拥有这个变量名、句号和故事结尾。让我们访问文档

标识符是指定给类型(类、接口、, 结构、委托或枚举)、成员、变量或命名空间有效 标识符必须遵循以下规则:

  • 标识符必须以字母开头,或
  • 标识符可以包含Unicode字母字符十进制数字字符Unicode连接字符Unicode 组合字符或Unicode格式字符
如您所见,列表中没有句号/句号。从而使变量名
9HM.A2
无效


9HM.A2
重命名为
\u9hm\ua2
\u9hma2
(乐趣等级100)

不,您不需要这样命名变量。变量名是针对开发人员的,而不是针对最终用户的

如果需要根据字符串查找数据,请使用字典:

var timeTable = new Dictionary<string, string[][]>
{
    { 
        "9HM.A2", new string[][]
        {
            new string[] {""},
            new string[] {""},
            new string[] {""},
            new string[] {""},
        }
    },
    { 
        "8XX.Z3", new string[][]
        {
            new string[] {""},
            new string[] {""},
            new string[] {""},
            new string[] {""},
        }
    },

}

您应该重新考虑锯齿阵列是否适合您的需要;您可能更愿意创建一个类来保存该数据。

欢迎使用堆栈溢出。不,
9HM.A2
根本不是有效的变量名。(数组方面与此无关)你说你需要这个变量名-你能在这里编辑你的问题来解释动机吗?这个要求是不可行的-但是如果你能提供更多关于导致这个要求的原因的信息,我们可能会建议替代方案。感觉他们在这里是一个X-Y问题:为什么你想要它完全是“9HM.A2”?我需要能够得到它,因为用户将输入9HM.A2,然后我需要得到这个数组。因此,除非我把它定为“nineHMdotA2”(目前唯一真正的替代方案),否则我需要这样做。我只需要知道这是否可能是upvote的可能副本,我认为这是最明智的解决方案。(而且我今天的分数已经用完了,所以我也可能用完UpVots)编辑修复了这个问题,有一个向上投票。但是,现在OP的下一个问题是:“从字符串输入“xyz”,如何获取名为“xyz”的变量的内容?”
var timeTable = new Dictionary<string, string[][]>
{
    { 
        "9HM.A2", new string[][]
        {
            new string[] {""},
            new string[] {""},
            new string[] {""},
            new string[] {""},
        }
    },
    { 
        "8XX.Z3", new string[][]
        {
            new string[] {""},
            new string[] {""},
            new string[] {""},
            new string[] {""},
        }
    },

}
if (timeTable.TryGetValue("9HM.A2", out var userTimeTable))
{
    // use userTimeTable
}