当前位置:  开发笔记 > 编程语言 > 正文

在C#中弹出数组

如何解决《在C#中弹出数组》经验,为你挑选了4个好方法。

我在C#中有一个字符串数组,我想从数组中弹出顶部元素(即删除第一个元素,然后将所有其他元素向上移动一个).在C#中有一种简单的方法吗?我找不到Array.Pop方法.

我需要使用像ArrayList这样的东西吗?我的数组中项目的顺序很重要.



1> driAn..:

使用列表,队列或堆栈代替..

List
Queue
Stack


虽然这个建议是公平的,但我不认为这回答了这个问题; 如何弹出数组中的第一个元素.至少也许你应该已经展示了如何使用List等.
我没有在这些类型的文档中看到Pop函数,除了Stack.

2> Jon Skeet..:

Queue(先进先出)或Stack(进去,先出)是你所追求的.

.NET中的数组是固定长度的 - 您无法从中删除元素或者确实向它们添加元素.您可以使用Listbut 执行此操作,Queue并且Stack在需要队列/堆栈语义时更合适.



3> Paul Lefebvr..:

来自MSDN:

using System;
using System.Collections.Generic;

namespace ConsoleApplication1
{
    class MSDNSample
    {
       static void Main()
       {
          string input = "a b c d";

          Stack myStack = new Stack(
             input.Split(new string[] { " " }, StringSplitOptions.None));

          // Remove the top element (will be d!)
          myStack.Pop();

          Queue myQueue = new Queue(

          input.Split(new string[] { " " }, StringSplitOptions.None));

          // Remove the first element (will be a!)
          myQueue.Dequeue();

       }
    }
}

http://social.msdn.microsoft.com/Forums/en-US/csharplanguage/thread/a924097e-3d72-439d-984a-b371cd10bcf4/



4> Arturo Mench..:

由于我们拥有linq,因此非常容易做到:

string[] array = ...;
array = array.Skip(1).ToArray();

推荐阅读
mobiledu2402852357
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有