Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.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# 更改数组c中的数据位置#_C#_Asp.net_Arrays - Fatal编程技术网

C# 更改数组c中的数据位置#

C# 更改数组c中的数据位置#,c#,asp.net,arrays,C#,Asp.net,Arrays,当用户在列表框中选择日期时,我想更改数组中的数据位置。我将在示例问题中向您展示 array = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; 如果用户在列表框中选择text=“Mar”value=3 结果数组应如下所示: array = {"Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "De

当用户在列表框中选择日期时,我想更改数组中的数据位置。我将在示例问题中向您展示

array = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
如果用户在列表框中选择text=“Mar”value=3 结果数组应如下所示:

array = {"Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "Jan", "Feb"}
我怎么能这样做。多谢各位

var array = new[] {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};

var value = 3; // value >= 1

array = array.Skip(value - 1).Concat(array.Take(value - 1)).ToArray();

产生:

玷污 四月 也许 六月 七月 八月 九月 十月 十一月 12月 简 二月

产生:

玷污 四月 也许 六月 七月 八月 九月 十月 十一月 12月 简 二月

产生:

玷污 四月 也许 六月 七月 八月 九月 十月 十一月 12月 简 二月

产生:

玷污 四月 也许 六月 七月 八月 九月 十月 十一月 12月 简
二月

我相信最有效的方法是:

public string[] ShiftArray(string[] array, int shiftBy)
{
    string[] newArray = new string[array.Length];

    Array.Copy(array,  shiftBy, newArray, 0, array.Length - shiftBy);
    Array.Copy(array,  0, newArray, array.Length - shiftBy, shiftBy);

    return newArray;
}

我相信最有效的方法是:

public string[] ShiftArray(string[] array, int shiftBy)
{
    string[] newArray = new string[array.Length];

    Array.Copy(array,  shiftBy, newArray, 0, array.Length - shiftBy);
    Array.Copy(array,  0, newArray, array.Length - shiftBy, shiftBy);

    return newArray;
}

我相信最有效的方法是:

public string[] ShiftArray(string[] array, int shiftBy)
{
    string[] newArray = new string[array.Length];

    Array.Copy(array,  shiftBy, newArray, 0, array.Length - shiftBy);
    Array.Copy(array,  0, newArray, array.Length - shiftBy, shiftBy);

    return newArray;
}

我相信最有效的方法是:

public string[] ShiftArray(string[] array, int shiftBy)
{
    string[] newArray = new string[array.Length];

    Array.Copy(array,  shiftBy, newArray, 0, array.Length - shiftBy);
    Array.Copy(array,  0, newArray, array.Length - shiftBy, shiftBy);

    return newArray;
}

强烈建议您学习使用适当的数据结构来表示数据,而不是将所有内容都放在一堆字符串中。ASP.Net不是PHP。@HighCore看起来更像是多次将“第一项移到列表末尾”的任务:)。可能的重复:强烈建议您学习使用适当的数据结构来表示数据,而不是将所有内容都放在一堆字符串中。ASP.Net不是PHP。@HighCore看起来更像是多次将“第一项移到列表末尾”的任务:)。可能的重复:强烈建议您学习使用适当的数据结构来表示数据,而不是将所有内容都放在一堆字符串中。ASP.Net不是PHP。@HighCore看起来更像是多次将“第一项移到列表末尾”的任务:)。可能的重复:强烈建议您学习使用适当的数据结构来表示数据,而不是将所有内容都放在一堆字符串中。ASP.Net不是PHP。@HighCore看起来更像是多次将“第一项移到列表末尾”的任务:),可能重复: