关于sortedlist 中值的添加,删除,索引测试.
SortedList 类代表了一系列按照键来排序的键/值对,这些键值对可以通过键和索引来访问。
排序列表是数组和哈希表的组合。它包含一个可使用键或索引访问各项的列表。如果您使用索引访问各项,则它是一个动态数组(ArrayList),如果您使用键访问各项,则它是一个哈希表(Hashtable)。集合中的各项总是按键值排序。
总结:用于坐标删除删除的是排序好的队列.跟删除数组差不多.
在项目两个列进行合并时可以使用这种方式,时间当键, 码当值,自动排序打印.但不能用sortedlist 因为键是唯一的,不能重复.
项目要做两个txt内容比对.比如 a b 两个txt
本来有这么个设想,
读取a txt 文件 一条数据,开着文件流不关闭.
读取b txt文件内容,文件流开着,每次读取比如十个数.达到20数后清空前十个,保留后十个作为继续让a的数据比对,因为数据相同的位置相差不多.比如a文件有个值100,假如b文件也有这个100的话,那b文件的100这个值在这个文件中的位置跟A中100的位置差不多,项目是两个读码器同时读一条线的数据,作为相互补充,上道读码器和下道读码器中间隔着一米左右,最终所以想优化成这个效果.
使用soredlist 删除读取的btxt slist时,比如删除5个
用到
for (int i = 0; i < 5; i++)
{
//把即将删除的添加到另一个队列.作为即将保存的
differlist.Add(n_readlist.GetKey(i), n_readlist.GetByIndex(i));
//开始删除
n_readlist.RemoveAt(i);
}
1:错误1:上边这种方法是不适合这种项目需求的.
因为add之后,里边的值是按照序列排序了,位置变化了.所以本来想删除第一个加进来的,可能把别的值删除掉了
2:错误2: 上边的循环写法错误,因为每次删除之后,循序上移,原先的1位置的值移到了0位置.循环到第二次的时候删除的值实际是 最开始的第三个值,而第二个值被漏掉了.
如图:循环到第二次时, 实际要求删除第一个值.如图删除前

删除后第一个值还存在,第二个值没了.

而下边是字典dictionary 加入的数值之后的数据结构,两列中间用逗号隔开,起边多了一项排序数值,而且数据顺序没有变化.

关于sortedlist 中值的添加,删除,索引测试.的更多相关文章
- mysql添加删除索引,查看某个表的建表语句
查看某个表的建表语句 :show create table data_statdata; drop index ts on data_statdata; 索引是加速查询的主要手段,特别对于涉及多个表的 ...
- Mysql使用Java UUID作为唯一值时使用前缀索引测试
Mysql可以使用字符串前缀 作为索引 以节约空间. 下面我们以 Java的UUID 生成的 32位(移除UUID中的 中划线)字符串 来做一下 测试. 表结构: CREATE TABLE `test ...
- mysql建立索引 删除索引
建立索引 1.添加PRIMARY KEY(主键索引) mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 2.添加UNIQUE ...
- 动态添加删除网卡 - 每天5分钟玩转 OpenStack(156)
这是 OpenStack 实施经验分享系列的第 6 篇. 在项目实施过程中,经常会有添加删除网卡的需求.比如一个运行数据库的 instance,初始只有一个网卡,数据库服务和备份共用这块网卡,后来为提 ...
- jquery中找到元素在数组中位置,添加或者删除元素的新方法
一:查找元素在数组中的位置 jQuery.inArray()函数用于在数组中搜索指定的值,并返回其索引值.如果数组中不存在该值,则返回 -1. jQuery.inArray( value, array ...
- MySQL 添加索引,删除索引及其用法
一.索引的作用 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,所以查询语句的优化显然是重中之重. 在数据 ...
- MySQL添加、删除索引
1.索引类型 UNIQUE(唯一索引):不可以出现相同的值,可以有NULL值: INDEX(普通索引):允许出现相同的索引内容: PROMARY KEY(主键索引):不允许出现相同的值: fullte ...
- 分享知识-快乐自己:MySQL中的约束,添加约束,删除约束,以及一些其他修饰
创建数据库: CREATE DATABASES 数据库名: 选择数据库: USE 数据库名: 删除数据库: DROP DATAVBASE 数据库名: 创建表: CREATE TABLE IF NOT ...
- phoenix中添加二级索引
Phoenix创建Hbase二级索引 官方文档 1. 配置Hbase支持Phoenix创建二级索引 1. 添加如下配置到Hbase的Hregionserver节点的hbase-site.xml ...
随机推荐
- Hibernate 再接触 CRUD
1.save 一对多双向 package com.bjsxt.hibernate; import java.util.HashSet; import java.util.Set; import jav ...
- C#调用非托管dll--路径问题
DllImport会按照顺序自动去寻找的地方:1.exe所在目录(一般在bin目录下)2.System32目录3.环境变量目录所以只需要你把引用的DLL 拷贝到这三个目录下 就可以不用写路径了或者可以 ...
- C++ CTreeview的checkbox使用方法
1. 消息事件 (1)鼠标点击当前ITEM的CHECKBOX:引发NM_CLICK事件并传递TVHT_ONITEMSTATEICON. (2)鼠标点击当前ITEM的TEXT:引发NM_CLIC ...
- SPSS-回归分析
回归分析(一元线性回归分析.多元线性回归分析.非线性回归分析.曲线估计.时间序列的曲线估计.含虚拟自变量的回归分析以及逻辑回归分析) 回归分析中,一般首先绘制自变量和因变量间的散点图,然后通过数据在散 ...
- java NIO 文章
http://tutorials.jenkov.com/java-nio/ 总结nio nio是非阻塞的,一个线程可以管多个Channel,每个channel可以处理bytebuffer 而no是阻塞 ...
- 2.3、CDH 搭建Hadoop在安装(安装Cloudera Manager Server)
第3步:安装Cloudera Manager Server 在此步骤中,您将在Cloudera Manager主机上安装JDK和Cloudera Manager Server软件包. 安装Cloude ...
- Ambient Light
[Ambient Light] Ambient light is light that is present all around the scene and doesn’t come from an ...
- 预览InputFile
[预览InputFile] 通过input的files属性,可以取到选择的File对象,通过FileReader可以将File对象读取出来. <body> <input type=& ...
- 修改Eclipse主题与Eclipse中使用SVN
自从开始IDEA后,很久没用eclipse了,有位老同学问我eclipse中如何使用SVN?我就打开eclipse试试,白光太刺眼了~作为强迫症修改下主题.结果如下: 修改完编辑的背景颜色,并没有很好 ...
- selenium ide界面介绍
Selenium Ide是firefox浏览器的一个插件,可以进行web的录制和回放,完成简单的自动化测试,同时可以将录制的脚本导出多种语言的脚本. 下面是Selenium Ide的界面: Base ...