List数组
大家好,我是蜀云泉。我的博文之中存在的不足之处希望大家包涵。
今天学习unity时,在实现某个功能的脚本中发现了List数组。关于List数组的问题我在学C#时已经接触了一点,但是我比较粗心和浮躁以前学的已经忘的差不多啦,所以今天抽空研究了一下,为了大家更好的理解,我将使用C#的方式来讲,下面我们切入正题:
一、声明方式:
第一种声明方式:
1 List<string> mylist = new List<string>();
第二种声明方式:
string[] a = {"","","","" };
List<string> mylist = new List<string>(a);
可以看到这两种方式都是差不多的,只不过第二种在声明时顺便赋了初值而已,list<string>这个尖括号里面的是这个数组的类型,可以是string,int,double,还可以是类名,以类名为类型的方式在unity中会经常用到。
二、增:
增加有三种方式,第一种是增加一个:
1 mylist.Add("");
第二种是直接增加一群:
string[] b = {"蜀","云","泉"};
mylist.AddRange(b);
第三种是插入:
mylist.Insert(,"hello");
这种增的方式有点特别,在下标为1的地方插入一个"hello",原来在mylist[1]的字符被挤到mylist[2]啦,哈哈,是不是有点鸠占鹊巢的味道。
三、删:
删除也有三种方式,第一种删除一个:
mylist.Remove("");
第二种删除下标为*的元素:
mylist.RemoveAt();
第三种删除是从*下标开始删除*个元素:
1 mylist.RemoveRange(,);
这是从mylist[1]开始删除,删除两个元素,也就是说mylist[1],mylist[2]位置上的元素被删除掉了,后面的元素会补上来。
四、遍历:
遍历很简单啦,和C#中的数组遍历是一模一样的
foreach (string j in mylist) {
Console.WriteLine(j);
}
五、查:
在mylist中查找某个元素:
if(mylist.Contains(""))
Console.WriteLine("有4这个元素");
六、顺序:
升序时如果是int的话就是从小到大排序的,代码如下:
int[] b = new int[] {,,, };
List<int> bj = new List<int>(b);
bj.Sort();
5 foreach (int j in bj) {
Console.WriteLine(j);
}
效果图如下:

升序时如果你的List还是string类型的话会根据首字母进行排序,代码如下:
string[] a = {"a啊","q泉","y云","c柴" };
List<string> mylist = new List<string>(a);
mylist.Sort();
foreach (string j in mylist) {
Console.WriteLine(j);
}
效果图:

但如果你的string数组是纯汉字就没办法了。。。。
反转,就是把你现在的list的顺序给颠倒过来,注意这不是降序。直接上代码:
mylist.Reverse();
降序 ,降序很好实现,把你的list先升序,再反转就好了,这里不多说。
七、清空和数目:
清空:
mylist.Clear();
数目:
mylist.Count();
八、总结:
好了,list数组的问题现在告一段落吧,希望对需要的人有些帮助。我要去准备下一个问题了,呵呵,生活就是这样,有无数的难题在等待着你,如果放任不管,说不定哪天就成为你最大的敌人,正对它们就是为自己的明天负责。再见。
List数组的更多相关文章
- javascript中的Array对象 —— 数组的合并、转换、迭代、排序、堆栈
Array 是javascript中经常用到的数据类型.javascript 的数组其他语言中数组的最大的区别是其每个数组项都可以保存任何类型的数据.本文主要讨论javascript中数组的声明.转换 ...
- 探究javascript对象和数组的异同,及函数变量缓存技巧
javascript中最经典也最受非议的一句话就是:javascript中一切皆是对象.这篇重点要提到的,就是任何jser都不陌生的Object和Array. 有段时间曾经很诧异,到底两种数据类型用来 ...
- 编写高质量代码:改善Java程序的151个建议(第5章:数组和集合___建议75~78)
建议75:集合中的元素必须做到compareTo和equals同步 实现了Comparable接口的元素就可以排序,compareTo方法是Comparable接口要求必须实现的,它与equals方法 ...
- 了解PHP中的Array数组和foreach
1. 了解数组 PHP 中的数组实际上是一个有序映射.映射是一种把 values 关联到 keys 的类型.详细的解释可参见:PHP.net中的Array数组 . 2.例子:一般的数组 这里,我 ...
- JavaScript权威指南 - 数组
JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. J ...
- JavaScript常见的五种数组去重的方式
▓▓▓▓▓▓ 大致介绍 JavaScript的数组去重问题在许多面试中都会遇到,现在做个总结 先来建立一个数组 var arr = [1,2,3,3,2,'我','我',34,'我的',NaN,NaN ...
- js:给定两个数组,如何判断他们的相对应下标的元素类型是一样的
题目: 给Array对象原型上添加一个sameStructureAs方法,该方法接收一个任意类型的参数,要求返回当前数组与传入参数数组(假定是)相对应下标的元素类型是否一致. 假设已经写好了Array ...
- javascript数组查重方法总结
文章参考地址:http://blog.csdn.net/chengxuyuan20100425/article/details/8497277 题目 对下列数组去重: var arr = ['aa', ...
- 掌握javascript中的最基础数据结构-----数组
这是一篇<数据结构与算法javascript描述>的读书笔记.主要梳理了关于数组的知识.部分内容及源码来自原作. 书中第一章介绍了如何配置javascript运行环境:javascript ...
- 小兔JS教程(四)-- 彻底攻略JS数组
在开始本章之前,先给出上一节的答案,参考答案地址: http://www.xiaotublog.com/demo.html?path=homework/03/index2 1.JS数组的三大特性 在J ...
随机推荐
- 查询SQLSERVER中系统表结构
Declare @TableName Varchar(20); SET @TableName='B_SupplierDA'; --SELECT TE.字段名+',' --FROM ( SELECT ( ...
- 不同版本的Chrom浏览器对应的ChromDriver的版本
附chromedriver与chrome的对应关系表: chromedriver版本 支持的Chrome版本 v2.40 v66-68 v2.39 v66-68 v2.38 v65-67 v2.37 ...
- TP5调用微信JSSDK 教程 - 测试成功案例
前提:必需了解TP5的全局配置,扩展目录,composer,依赖注入的概念: 第一步:首先配置加载官方JSSDK类 "autoload": { "files": ...
- 七牛云 qshell 使用
七牛云 qshell 控制台工具上传 命令:qshell fput another1 demo.txt /users/tianyang/demo.txt ======================= ...
- windows 下项目打包、备份、覆盖、md5check
工具从网络自行下载,目前我存储在网盘上,可下载后调用 更新包打包.创建md5,压缩成.zip 现有项目按日期备份 覆盖项目并做md5check @echo off rem ============== ...
- 【BZOJ5470】[FJOI2018]所罗门王的宝藏()
[BZOJ5470][FJOI2018]所罗门王的宝藏() 题面 BZOJ 洛谷 有\(n+m\)个变量,给定\(k\)组限制,每次告诉你\(a_i+b_j=c_k\),问是否有可行解. 题解 一道很 ...
- js笔记-语句,变量
JavaScript介绍 JavaScript是运行在浏览器端的脚步语言,JavaScript主要解决的是前端与用户交互的问题,包括使用交互与数据交互. JavaScript是浏览器解释执行的,前端脚 ...
- luogu2605 基站选址 (线段树优化dp)
设f[i][j]表示在第i个村庄建第j个基站的花费 那么有$f[i][j]=min\{f[k][j-1]+w[k,i]\}$,其中w[k,i]表示在k,i建基站,k,i中间的不能被满足的村庄的赔偿金之 ...
- Jarvis OJ [XMAN]level1 write up
首先 老规矩,把软件拖到Ubuntu里checksec一下文件 然后知道了软件位数就放到IDA32里面... 熟悉的函数名... 缘真的妙不可言... 然后看了下vulnerable_function ...
- Python By 360、小米
小米 乱谈Python并发 说实话,我一直觉得PHP真的是最好的语言,不仅养活了一大批PHP程序员,同时还为安全人员提供了大量的就业机会.然而,令人唏嘘的是,安全界很多人其实是吃着Python的饭,操 ...