我想检查我最后一个元素的数组长度是否为 6。在这里我不知道这个数组有多少个 id。我的消息数组是这样的。
代码 用户名 id1 id2 id3... 日期
if ([msg_arr.Length - 1] == 6)//YYMMDD
{
strDate = msg_arr[msg_arr.Length - 1].ToString();
}
但我在这里遇到错误。
只有赋值、调用、递增、递减和新对象表达式可以用作语句
应该是if (msg_arr[msg_arr.Length - 1].Length == 6)
。
if ([msg_arr.Length - 1] == 6) //this is a problem
您没有指定您访问的数据,我认为它必须类似于
if (msg_arr[msg_arr.Length - 1] == 6)
如果他数组的内容是string
,请执行以下操作:
或者
int val = int.Parse(msg_arr[msg_arr.Length - 1]);
如果 (val == 6)
或者
if (msg_arr[msg_arr.Length - 1] == "6")
看来您期望格式为 YYMMDD 的字符串日期,并且您希望确保数组中有六个值。我相信你所希望的:
if (msg_arr.Length == 6)//YYMMDD
{
strDate = (String.Join("", msg_arr);
}
ToString() 方法只会分配对象的字符串名称,因此 strDate 将具有类似于“System.Int32[]”的值