数组的移动复制

努力做个女程序员啊 2018-03-16 06:51:11
{8,9,0,1,10},通过向右移动或复制2位怎么变成{8,9,8,9,0,1,10}
...全文
222 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2018-03-16
  • 打赏
  • 举报
回复
如果你偏好 List 可以这样
            var d = new List<int>(a);
            var n = 2; //右移的个数
            d.InsertRange(0, d.GetRange(0, n));
LWHLOVECD 2018-03-16
  • 打赏
  • 举报
回复
List<int> m = new List<int> {8,9,0,1,10}; List<int> n = new List<int> { }; n.Add(m[0]); n.Add(m[1]); for (int i = 0; i < m.Count; i++) { n.Add(m[i]); } for(int j=0;j<n.Count ;j++) { Console.Write(n[j]+" "); } Console.ReadKey(); 但是这个只是针对你这个例,我感觉List比较好用,你可以试试。
xuzuning 2018-03-16
  • 打赏
  • 举报
回复
 
           //用数组方法
           var a = new int[] { 8, 9, 0, 1, 10 };
            var b = new int[a.Length + 2];
            Array.Copy(a, 0, b, 0, 2);
            Array.Copy(a, 0, b, 2, a.Length);

            //用集合方法
            var c = a.Take(2).Concat(a).ToArray();

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧