list(计算机专业术语)详细资料大全

如题所述

1. List(计算机专业术语)详细资料大全
List,又称列表,是计算机专业术语,指的是一种数据结构,用于存储一系列的元素。在程序设计语言中,List通常被视为一个类,它允许以线性方式管理元素集合。List的特点在于能够在任何位置快速地添加或删除元素,但不支持随机访问。List是类库中提供的多种容器之一,其他还包括vector、set、map等。List通过模板实现(即泛型),能够处理任何类型的数据,包括用户自定义的类型。
2. 领域定义
在程序设计语言中,List是标准类库中的一个类,可以简单地视为双向链表,以线性方式管理元素集合。List的特色是在集合的任何位置添加或删除元素都非常快,但不支持随机存取。List是类库提供的多种容器之一,除此之外还有vector、set、map等。List以模板方式实现(即泛型),可以处理任何类型的数据,包括用户自定义的类型。
3. 有序集合
List是一种有序的集合,用户可以精确控制列表中每个元素的插入位置。根据元素的整数索引(在列表中的位置)可以访问和搜索列表中的元素。
4. 与vector的区别
List与vector都是常用的容器,但List是双向循环链表,每个元素都知道它前面和后面的元素。与vector不同,List不支持随机存取。List中提供了与vector类似的成员函数,但它还提供了对表首元素的操作,如push_front和pop_front,这些是vector不具备的。由于List没有备份空间的概念,在添加或删除元素时不会像vector那样失效。
5. 提取数组
List函数类似于array函数,但它可以在一次操作中从一个数组中提取多个值,并为多个变量赋值。其形式如下:
```cpp
void list(mixed...)
```
在从数据库或文件中提取信息时,这种结构特别有用。例如,如果希望格式化并输出从一个文本文件中读取的信息,文件的每一行都包含用户信息,如姓名、职业和喜欢的颜色,每项用竖线分隔。可以使用List()来读取每行,将各部分数据赋给变量,并按照需要格式化并输出数据。
6. 领域简介
与set不同,列表通常允许重复的元素。更准确地说,列表通常允许满足e1.equals(e2)的元素对e1和e2,如果列表本身允许null元素的话,通常它们也允许多个null元素。有些人可能会尝试通过抛出运行时异常来禁止列表中的重复元素,但这通常不是推荐的做法。
List接口在迭代器、添加、删除、相等和哈希码方法的约定上增加了一些其他约定,超过了集合接口中指定的约定。为了方便起见,这里也包括了其他继承方法的声明。
List接口提供了四种对列表元素进行定位(索引)访问方法。列表(像Java数组一样)是基于0的。注意,这些操作可能在和某些实现(例如LinkedList类)的索引值成比例的时间内执行。因此,如果调用者不知道实现,那么在列表元素上迭代通常优于用索引遍历列表。
List接口提供了一个特殊的迭代器,称为ListIterator,除了允许迭代器接口提供的正常操作外,该迭代器还允许元素插入和替换,以及双向访问。还提供了一个方法来获取从列表中指定位置开始的列表迭代器。
List接口提供了两种搜索指定对象的方法。从性能的角度来看,应该小心使用这些方法。在很多实现中,它们将执行高开销的线性搜索。
List接口提供了两种在列表的任意位置高效添加和移除多个元素的方法。
7. 注意事项
尽管列表允许自身作为元素包含在内,但应该特别小心:在这样的列表上,相等和哈希码方法不再是定义良好的。
某些列表实现对列表可能包含的元素有限制。例如,某些实现禁止null元素,而某些实现则对元素的类型有限制。尝试添加不合格的元素会抛出未检查的异常,通常是NullPointerException或ClassCastException。尝试查询不合格的元素是否存在可能会抛出异常,也可能简单地返回false;某些实现会采用前一种行为,而某些则采用后者。总的来说,尝试对不合格元素执行操作时,如果完成该操作后不会导致在列表中插入不合格的元素,则该操作可能抛出一个异常,也可能成功,这取决于实现的选择。此接口的规范中将这样的异常标记为“可选”。
List接口提供了多种常用的操作,如添加、删除、获取、清除、是否包含、相等、哈希码、索引、大小、子列表、数组转换等。
List控件在各种程序中具有数据显示直观、操作方便的特点,因此使用率极高。FarPoint的List Pro是包含最强大的列表框和组合框的开发组件之一。这些强大的控件允许显示多达20亿列表项,多行显示单个记录,便于查看合并单元格文本,搜索指定的列表项,或使用无限制的键值进行列表项排序。List Pro具有200多个属性,可进一步自定义控件的外观。总之,这些特性使List Pro成为最终的数据查看器(Data Viewer)。
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网