API是没有这种方法的。
思路一:取到之后把该索引的内容替换掉 然后再次取索引 一直到 -1
思路二:遍历list get(index)取值 与 你要去的值判断 相等则存储起来
判断完后即可得到你要的了。
list计算机专业术语,编辑表, 一览表; 明细表; 目录; 名单。
在计算机领域指序列。在编程语言中List 是类库中的一个类,可以简单视之为双向连结串行,以线性列的方式管理物件集合。
list 的特色是在集合的任何位置增加或删除元素都很快,但是不支持随机存取。list 是类库提供的众多容器(container)之一,除此之外还有vector、set、map、…等等。list 以模板方式实现(即泛型),可以处理任意型别的变量,包括使用者自定义的资料型态
C#的List为泛型集合,所属命名空间:
SystemCollectionsGenericpublic class List<T> : IList<T>, ICollection<T>, IEnumerable<T>, IList, ICollection, IEnumerable
List<T>类是 ArrayList 类的泛型等效类。该类使用大小可按需动态增加的数组实现 IList<T> 泛型接口。 泛型的好处: 它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换,所以性能得到提高。
一般用法如下:
1、 List的基础、常用方法,声明:
List<T> mList = new List<T>(); //T为列表中元素类型,现在以string类型作为例子List<string> mList = new List<string>();
List<T> testList =new List<T> (IEnumerable<T> collection);//以一个集合作为参数创建List string[] temArr = { "Ha", "Hunter", "Tom", "Lily", "Jay", "Jim", "Kuku", "Locu" };
List<string> testList = new List<string>(temArr);
2、添加元素:
List Add(T item);//添加一个元素ListAdd("John");
List AddRange(IEnumerable<T> collection);//添加一组元素
string[] temArr = { "Ha","Hunter", "Tom", "Lily", "Jay", "Jim", "Kuku", "Locu" };
ListAddRange(temArr);
ListInsert(int index, T item);//在index位置添加一个元素
ListInsert(1, "Hei");
3、 遍历List中元素:
foreach (T element in mList) T的类型与mList声明时一样{
ConsoleWriteLine(element);
}
foreach (string s in mList)
{
ConsoleWriteLine(s);
}
4、删除元素:
List Remove(T item);//删除一个值mListRemove("Hunter");
List RemoveAt(int index);//删除下标为index的元素
mListRemoveAt(0);
List RemoveRange(int index, int count);//从下标index开始,删除count个元素
mListRemoveRange(3, 2);
import javautilArrayList;
import javautilHashSet;
import javautilList;
import javautilSet;
public class Test {
public static void main(String args[]) {
List<String> list = new ArrayList<String>() {
private static final long serialVersionUID = -6469181946992000438L;
{
thisadd("aaa");
thisadd("bbb");
thisadd("ccc");
thisadd("aaa");
thisadd("bbb");
thisadd("ddd");
thisadd("eee");
}
};
Set<String> set = new HashSet<String>();
for (String ls : list) {
if (setcontains(ls)) {
Systemoutprintln("重复值:" + ls);
}
setadd(ls);
}
}
}
API是没有这种方法的
思路一:取到之后把该索引的内容替换掉 然后再次取索引 一直到 -1
思路二:遍历list get(index)取值 与 你要去的值判断 相等则存储起来
判断完后即可得到你要的了
list<CString>::iterator
itr=m_listbegin();
你这个迭代器的定义就是来干这个的。
通过如下 *** 作遍历list所有元素:
list<CString>::iterator
itr=m_listbegin();
for
(
;
itr
!=
m_listend();
itr++)
{
CString
str
=
itr;
//
下面执行你的 *** 作
}
迭代器就相对于个指针,就是外国人喜欢故弄玄虚而言。别被他们忽悠住了
可以对第二个list的元素进行遍历,检查是否出现在第二个list当中,如果使用表理解,可以使用一行代码完成任务。
list1 = [1,2,3,4,5]
list2 = [4,5,6,7,8]
print [l for l in list1 if l in list2]
# [4,5]
如果每一个列表中均没有重复的元素,那么还有另外一种更好的办法。首先把两个list转换成set,然后对两个set取交集,即可得到两个list的重复元素。
set1 = set(list1)
set2 = set(list2)
print set1 & set 2
# {4,5}
//先用contains判断是否有该元素
if(list集合contains(对象)){
list集合indexOf(对象名);
}
因为List 是一个元素有序的、可以重复、可以为 null 的集合;
所以;
indexOf可以获取元素出现的第一个位置的引索,与之相反的是lastlndexOf获取元素最后出现的位置引索,如果集合中没有该元素则返回-1,其原理都是利用equals方法配合历遍来判断。
扩展资料:
C++中list用法详解
1list中的构造函数:
list() 声明一个空列表;
list(n) 声明一个有n个元素的列表,每个元素都是由其默认构造函数T()构造出来的
list(n,val) 声明一个由n个元素的列表,每个元素都是由其复制构造函数T(val)得来的
list(n,val) 声明一个和上面一样的列表
list(first,last) 声明一个列表,其元素的初始值来源于由区间所指定的序列中的元素
以上就是关于如何获取list中所有元素的索引全部的内容,包括:如何获取list中所有元素的索引、c# 如何获取List中的元素,其索引大于int.MaxValue、java中如何获取list里面相同的元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)