zoukankan      html  css  js  c++  java
  • List数组

        大家好,我是蜀云泉。我的博文之中存在的不足之处希望大家包涵。

        今天学习unity时,在实现某个功能的脚本中发现了List数组。关于List数组的问题我在学C#时已经接触了一点,但是我比较粗心和浮躁以前学的已经忘的差不多啦,所以今天抽空研究了一下,为了大家更好的理解,我将使用C#的方式来讲,下面我们切入正题:

       一、声明方式:

        第一种声明方式:

    1    List<string> mylist = new List<string>();

        第二种声明方式:

    1    string[] a = {"1","2","3","4" };
    2    List<string> mylist = new List<string>(a);

        可以看到这两种方式都是差不多的,只不过第二种在声明时顺便赋了初值而已,list<string>这个尖括号里面的是这个数组的类型,可以是string,int,double,还可以是类名,以类名为类型的方式在unity中会经常用到。

       二、增:

        增加有三种方式,第一种是增加一个:

    1   mylist.Add("5");

            第二种是直接增加一群:   

    1    string[] b = {"","",""};
    2    mylist.AddRange(b);

        第三种是插入:

    1    mylist.Insert(1,"hello");

        这种增的方式有点特别,在下标为1的地方插入一个"hello",原来在mylist[1]的字符被挤到mylist[2]啦,哈哈,是不是有点鸠占鹊巢的味道。

       三、删:

        删除也有三种方式,第一种删除一个:  

    1     mylist.Remove("3");

        第二种删除下标为*的元素: 

    1     mylist.RemoveAt(1);

        第三种删除是从*下标开始删除*个元素:   

    1     mylist.RemoveRange(1,2);

        这是从mylist[1]开始删除,删除两个元素,也就是说mylist[1],mylist[2]位置上的元素被删除掉了,后面的元素会补上来。

       四、遍历:

        遍历很简单啦,和C#中的数组遍历是一模一样的 

    1     foreach (string j in mylist) {
    2           Console.WriteLine(j);
    3     }

       五、查:

        在mylist中查找某个元素:  

    1    if(mylist.Contains("4"))
    2          Console.WriteLine("有4这个元素");

       六、顺序:

        升序时如果是int的话就是从小到大排序的,代码如下: 

    1   int[] b = new int[] {1,54,8,2 };
    2   List<int> bj = new List<int>(b);
    3   bj.Sort();
    4 
    5   foreach (int j in bj) {
    6        Console.WriteLine(j);
    7   }

        效果图如下:

        

        升序时如果你的List还是string类型的话会根据首字母进行排序,代码如下:  

    1    string[] a = {"a啊","q泉","y云","c柴" };
    2     List<string> mylist = new List<string>(a);           
    3     mylist.Sort();
    4 
    5     foreach (string j in mylist) {
    6          Console.WriteLine(j);
    7     }

        效果图:

        

        但如果你的string数组是纯汉字就没办法了。。。。

        反转,就是把你现在的list的顺序给颠倒过来,注意这不是降序。直接上代码:

    1    mylist.Reverse();

        降序 ,降序很好实现,把你的list先升序,再反转就好了,这里不多说。

        七、清空和数目:

        清空:

    1    mylist.Clear();

        数目:

    1   mylist.Count();

       八、总结:

        好了,list数组的问题现在告一段落吧,希望对需要的人有些帮助。我要去准备下一个问题了,呵呵,生活就是这样,有无数的难题在等待着你,如果放任不管,说不定哪天就成为你最大的敌人,正对它们就是为自己的明天负责。再见。

      

        

  • 相关阅读:
    彻底理解 Python 生成器
    Windows上虚拟环境的安装及使用
    github怎么绑定自己的域名
    解决ImportError: cannot import name HTTPSHandler
    服务器(Linux) 安装python3
    函数的参数(必选,默认,可变,关键字)
    python 异常处理(try...finally...和with...as 方法)
    LeetCode 33. 搜索旋转排序数组 | Python
    LeetCode 46. 全排列
    LeetCode 面试题51. 数组中的逆序对
  • 原文地址:https://www.cnblogs.com/yunquan/p/4699391.html
Copyright © 2011-2022 走看看