关键词:
首先,ArrayList集合和List都是非静态类,使用时都必须先实列化。
ArrayList类似一个数组,但比数组优越的是它的长度大小可变,并且可以存放不同类型的变量,包括值类型和引用类型。
常用方法如下:
1、Add():方法用于添加一个元素到当前列表的末尾
2、AddRange():方法用于添加一批元素(数组或者集合)到列表的末尾
3、Remove():方法用于删除一个元素,通过元素本身的引用来删除,填什么删什么
4、RemoveAt():方法用于删除一个元素,通过索引值来删除
5、RemoveRange():用于删除一批元素,通过指定开始的索引和删除的数量来删除
6、Insert(int index,value):用于添加一个元素到指定位置,列表后面的元素依次往后移
7、InsertRange(int index,values):用于从指定位置开始添加一批元素,列表后面的元素依次往后移动
8、Contains():用于查看集合中是否包含所给元素
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 using System.Collections; 7 namespace ArrayListMoth 8 { 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 ArrayList list = new ArrayList(); 14 //添加单个元素 15 list.Add(true); 16 list.Add(1); 17 list.Add("张三"); 18 //添加集合元素 19 list.AddRange(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }); 20 //list.AddRange(list); 21 22 //list.Clear();清空所有元素 23 //list.Remove(true);删除单个元素 写谁就删谁 24 //list.RemoveAt(0);根据下标去删除元素 25 //list.RemoveRange(0, 3);根据下标去移除一定范围的元素 26 //list.Insert(1, "插入的");在指定的位置插入一个元素 27 //list.InsertRange(0, new string[] { "张三", "李四" });在指定的位置插入一个集合 28 //bool b = list.Contains(1);判断是否包含某个指定的元素 29 list.Add("大男孩"); 30 if (!list.Contains("大男孩")) 31 { 32 list.Add("大男孩"); 33 } 34 else 35 { 36 Console.WriteLine("已经有了"); 37 } 38 for (int i = 0; i < list.Count; i++) 39 { 40 Console.WriteLine(list[i]); 41 } 42 // list.Sort();//升序排列 43 //list.Reverse();反转 44 Console.ReadKey(); 45 } 46 } 47 }
泛型集合List:
和ArrayList的区别就是List集合类型是固定的。
声明方式:List<type> list = new List<type>()
方法和ArrayList的差不多
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace _02_List泛型集合 8 { 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 //创建泛型集合对象 14 List<int> list = new List<int>(); 15 list.Add(1); 16 list.Add(2); 17 list.Add(3); 18 19 list.AddRange(new int[] { 1, 2, 3, 4, 5, 6 }); 20 // list.AddRange(list);//可以添加集合本身 21 22 //List泛型集合可以转换为数组 23 int[] nums = list.ToArray();//集合装换为数组 24 Console.WriteLine("集合转换为数组输出:"); 25 for (int i = 0; i < nums.Length; i++) 26 { 27 Console.WriteLine(nums[i]); 28 } 29 30 List<int> listInt= nums.ToList();//数组转换为集合 31 Console.WriteLine("数组转换为集合输出:"); 32 for (int i = 0; i <listInt.Count; i++) 33 { 34 Console.WriteLine(listInt[i]); 35 } 36 Console.ReadKey(); 37 } 38 } 39 }
为了避免拆箱和装箱的操作,大多数情况我们使用泛型集合List.
java之collection集合常见数据结构list和泛型
目录集合概述总结Collection集合的体系特点总结Collection集合常用APICollection集合的遍历方式方式一:迭代器总结方式二:foreach/增强for循环方式... 查看详情
java集合框架和泛型
...:collection、map、list、set。实现四个接口的六个实现类:ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeSet。 collection:存储一组不唯一,无序的对象List:继承collection接口,存储一组不唯一,有序的对象Set:继承collection接口,... 查看详情
C#方法重载和泛型接口
】C#方法重载和泛型接口【英文标题】:C#Methodoverloadingandgenericinterface[duplicate]【发布时间】:2013-03-1608:36:32【问题描述】:我对我们项目中的一个问题感到困惑。我试图简化它以重现效果:interfaceIBarclassBar:IBarinterfaceIFoo<T>whe... 查看详情
[java]java集合(setlistmap)和泛型
一、集合1.集合体系图Set集合体系图List集合体系图Map集合体系图2.Collection接口方法Collection接口没有直接的实现子类,是通过它的子接口Set和List来实现的//只要是Collection接口的实现类都可以做实参booleanaddAll(Collection<?extendsE&... 查看详情
总结第一章集合框架和泛型
... 1)List中的元素有顺序,可重复。常用的实现类有ArrayList、LinkedList和vector。 ØArrayList特点:查询效率高,增删效率低,线程不安全。 ØLinkedList特点:查询效率低,增删... 查看详情
初识集合和泛型
packagecom.oracle.Test;importjava.util.ArrayList;importjava.util.Collection;importjava.util.Iterator;/**问题:你们怎么理解集合这个词.*答:通常指容器.用来装载n个数据.**问题:集合中能放的元素类型*答:Java设计人员.设计Java中的集合时.是希望这个集合可... 查看详情
c#中的常见集合类的比较
一、非泛型集合与泛型集合非泛型集合:Array、ArrayList、HashTable、Queue、Statck、SortedList泛型集合:List、Dictionary、Queue、Stack、SortedList二、常见的集合类Array、ArrayList、List(一)Array:即常见的数组形式,大小固定,命名空间为Syst... 查看详情
[java]集合和泛型(代码片段)
一、集合1.集合体系图Set集合体系图List集合体系图Map集合体系图2.Collection接口方法Collection接口没有直接的实现子类,是通过它的子接口Set和List来实现的//只要是Collection接口的实现类都可以做实参booleanaddAll(Collection<?extendsE&... 查看详情
C# 8 中 Nullable 类型和泛型的问题
】C#8中Nullable类型和泛型的问题【英文标题】:AproblemwithNullabletypesandGenericsinC#8【发布时间】:2020-09-0707:26:18【问题描述】:添加<Nullable>enable</Nullable>or#nullableenable后,我的通用方法遇到了以下问题:这不起... 查看详情
集合框架和泛型编程(代码片段)
Java集合框架一组存储对象的容器(动态)常见的集合算法遍历集合添加集合元素删除集合元素查找集合元素集合元素排序JavaSE提供了:Collection接口:存储另一个元素的集合Map接口(图):存储键/值对Collection:操作集合的工具... 查看详情
泛型通配符
...创建对象使用只能作为方法的参数使用这时候我们不知道Arraylist集合使用什么数据类型,可以泛型的通配符?来接收数据类型注意:泛型没有继承概念的泛行总结泛型类和泛型方法泛行接口和泛型方法泛型通配符 查看详情
C#方法输入输出集合中的多个泛型类型
】C#方法输入输出集合中的多个泛型类型【英文标题】:C#multiplegenerictypesinmethodinputandoutputcollection【发布时间】:2021-09-0712:31:38【问题描述】:我有如下所示的通用查询方法List<T>Query<T>(QueryModelquery)whereT:BaseClass//getdataandD... 查看详情
java基础第十二篇之集合增强for循环迭代器和泛型
Collection接口中的常用方法:* 所有的子类子接口都是具有的*集合的方法:增删改查** publicbooleanadd(Ee);//添加元素返回值表示是否添加成功* publicbooleanremove(Objecto);//删除元素,返回值表示是否删除成功* 没有修改方法* 查询元素的... 查看详情
java集合框架和泛型
---恢复内容开始--- 集合:用来存储多个元素数组和集合区别: 数组的长度是固定的;集合的长度是可变的 数组存储的类型是同一类,可以存储基本数据类型;集合存储的都是对象,对象类型可以不一致 java集合... 查看详情
蓝鸥unity开发基础二——课时22arraylist
蓝鸥Unity开发基础二——课时22ArrayList一、ArrayList集合:集合是种容器,在程序中,使用集合管理相关对象组集合分为非泛型集合和泛型集合推荐视频讲师博客:http://11165165.blog.51cto.com/二、非泛型集合:使用非泛型集合需要引起... 查看详情
链表和泛型
链表属于集合的一部分,泛型指的是多种数据类型,链表可以接收多种数据类型。package*;importjava.util.ArrayList;publicclassLiu{ publicstaticvoidmain(String[]args){ Stringstr="1,3,5,0,7,0,12,9,2,0,0,0,0,0,0,0,0,0,0,0"; String[]strs=str.spli 查看详情
arraylist集合
1、ArrayList集合(1)ArrayList集合与数组的区别:数组的长度不可以改变;ArrayList集合的长度可以改变;(2)格式:ArrayList<E>list=newArrayList<E>();<E>代表泛型,也就是装在ArrayList集合中的元素是什么类型(类型必须一致... 查看详情
泛型的泛型的好处
...使用新的泛型集合类,而不要使用旧的非泛型集合类,如ArrayList。有关更多信息,请参见.NETFramework类库中的泛型(C#编程指南)。当然,也可以创建自定义泛型类型和方法,以提供自己的通用解决方案,设计类型安全的高效模式... 查看详情