c# 得到list符合某条件的索引值,排序
请教,在List集合中怎么得到元素的索引值,参考:http://www.myexception.cn/c-sharp/385022.html
这个可以用来读取窗口的多个textbox控件中内容:
------解决方案--------------------
你可以使用FindIndex方法
C# code
private void Form1_Load(object sender, EventArgs e)
{ TextBox textBox1 = new TextBox();
textBox1.Name = "X1";
TextBox textBox2 = new TextBox();
textBox2.Name = "X2";
TextBox textBox3 = new TextBox();
textBox3.Name = "X3";
TextBox textBox4 = new TextBox();
textBox4.Name = "X4";
List<TextBox> list = new List<TextBox> { textBox1, textBox2, textBox3, textBox4 };
int x = list.FindIndex(GetTextBox);
MessageBox.Show(x.ToString()); } private static bool GetTextBox(TextBox s)
{
if (s.Name == "X2")
{
return true;
}
else
{
return false;
}
}
读取textbox内容进list
c#中List <int[]>集合添加和查找元素,参考:http://blog.csdn.net/jinjazz/article/details/2387552
c#常用的数据存储分析参考:http://blog.csdn.net/zzmkljd/article/details/52343947
static double TestIndex(double num)//定义函数查找list的与某元素最接近的值或值的索引
{
List<double> list = new List<double>();//新定义一个list
list.Add(0.0158);//向list中添加数据
list.Add(0.0238);
list.Add(0.0315);
list.Add(0.0446);
//下面通过select语句与匿名函数找到与形参最接近的值
return list.Select((d, i) =>
{
return new
{
Value = d,
Index = i
};
}).OrderBy(x => Math.Abs(x.Value - num)).First().Value ;//.First().Index;可以得到索引位置,返回值要改为int
}
http://bbs.csdn.net/topics/391078319
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace ConsoleApplication1shiyan
{
class Program
{
static double TestIndex(double num)//定义函数查找list的与某元素最接近的值或值的索引
{
List<double> list = new List<double>();//新定义一个list
list.Add(0.0158);//向list中添加数据
list.Add(0.0238);
list.Add(0.0315);
list.Add(0.0446);
//下面通过select语句与匿名函数找到与形参最接近的值
return list.Select((d, i) =>
{
return new
{
Value = d,
Index = i
};
}).OrderBy(x => Math.Abs(x.Value - num)).First().Value ;//.First().Index;可以得到索引位置,返回值要改为int
} static void Main( string [] args)
{ double wo=TestIndex(0.0316);
List < int [] > alSchedule = new List < int [] > (); // 声明一个存放int[]元素的 集合
alSchedule.Add( new int [] { , , } );
alSchedule.Add( new int [] { , , , } );
int [] result = alSchedule.Find(FindElements);
if (result != null )
{
Console.WriteLine(result);
}
Console.Read();
}
private static bool FindElements( int [] arrInt)
{
return IsEquals(arrInt, new int [] { , , } );
}
public static bool IsEquals(Array array1, Array array2)
{
// 比较类型是否一样
if ( ! Object.ReferenceEquals(array1.GetType(), array2.GetType()))
{
return false ;
} // 比较长度是否一样
if (array1.GetLength( ) != array2.GetLength( ))
{
return false ;
} // 比较成员是否对应相等
ValueType v1, v2;
for ( int i = ; i < array1.GetLength( ); i ++ )
{
v1 = (ValueType)array1.GetValue(i);
v2 = (ValueType)array2.GetValue(i); if ( ! v1.Equals(v2))
{
return false ;
}
}
return true ;
} }
}
判断某list是不是list的元素
http://blog.csdn.net/jinjazz/article/details/2387552
各种变量声明时默认值:
class MyVar {
/*
* 基于安全的考虑,c#变量的初始化有一定的要求
* 1.所有的局部变量在被显示的初始化之前,都会被编译器当作未初始化,然后抛出编译期出错;
* 2.所有的字段级变量被编译器初始化为所属类型中等价于0的值.如布尔型的初始化为false,数值型的初始化为
或者0.0,所有引用类型都初始化为null.
* */
private string Name;
public void SaySomthing() {
string info;
Console.WriteLine(info);
}
/*
* 上面的代码中,Name是字段级变量,info是局部变量
* 在编译的时候就会报错.(使用了未赋值的info)
* 因为局部变量在使用时是必须要赋值的,而字段级的变量可以被编译器自动初始化. *
*/
/*
* 各种数据类型的默认值
* 整型的都返回0
* ushort 0
* ulong 0
* uint 0
* struct 整型的0,引用型的null
* short 0
* sbyte 0
* long 0
* int 0
* float 0.0F
* enum 枚举类型下标为0的元素
* double 0.0D
* decimal 0.0M
* char '\0'
* byte 0
* bool flase
*/
/*
从C#3.0开始,引入了var关键字,编译器可以通过它的初始值来判断具体类型.
* 根据上面的综述,var只能用于局部变量的声明,不能用于字段级别的声明,并且var声明的变量必须要有初始值,这样编译器才能判断变量的类型.
*/
}
默认值
http://www.cnblogs.com/guoyansi19900907/p/3664058.html
快速排序法,效率高:http://www.jb51.net/article/86442.htm
c# 得到list符合某条件的索引值,排序的更多相关文章
- 深度学习实践-物体检测-faster-RCNN(原理和部分代码说明) 1.tf.image.resize_and_crop(根据比例取出特征层,进行维度变化) 2.tf.slice(数据切片) 3.x.argsort()(对数据进行排列,返回索引值) 4.np.empty(生成空矩阵) 5.np.meshgrid(生成二维数据) 6.np.where(符合条件的索引) 7.tf.gather取值
1. tf.image.resize_and_crop(net, bbox, 256, [14, 14], name) # 根据bbox的y1,x1,y2,x2获得net中的位置,将其转换为14*1 ...
- exp导出一个表中符合查询条件的数据
原文地址:exp导出一个表中符合查询条件的数据 作者:charsi 导出一个表中的部分数据,使用QUERY参数,如下导出select * from test where object_id>50 ...
- java . 请在小于99999的正整数中找符合下列条件的数,它既是完全平方数,又有两位数字相同,如:144,676。
import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; //请在小于99999的正整数中找符合下列条件的 ...
- 根据对象属性查找对象或者数组(根据对象属性查找某数组内符合该条件的对象,数组内对象属性check为true的对象,存放到数组内) 滚动轴样式
1.根据对象属性查找某数组内符合该条件的对象. optionComwords:[ {optionName:"名称1", optionCode: '1'}, {optionNam ...
- 动态多条件查询分页以及排序(一)--MVC与Entity Framework版url分页版
一.前言 多条件查询分页以及排序 每个系统里都会有这个的代码 做好这块 可以大大提高开发效率 所以博主分享下自己的6个版本的 多条件查询分页以及排序 二.目前状况 不论是ado.net 还是EF ...
- cassandra高级操作之索引、排序以及分页
本次就给大家讲讲cassandra的高级操作:索引.排序和分页:处于性能的考虑,cassandra对这些支持都比较简单,所以我们不能希望cassandra完全适用于我们的逻辑,而是应该将我们的逻辑设计 ...
- mysql优化----大数据下的分页,延迟关联,索引与排序的关系,重复索引与冗余索引,索引碎片与维护
理想的索引,高效的索引建立考虑: :查询频繁度(哪几个字段经常查询就加上索引) :区分度要高 :索引长度要小 : 索引尽量能覆盖常用查询字段(如果把所有的列都加上索引,那么索引就会变得很大) : 索引 ...
- Delphi中的Val函数和iif函数(出错的时候,会有索引值)
在delphi中Val是一个将字符串转换为数字的函数,Val(S; var V; var Code: Integer)第一个参数是要转换的字符串,第二个参数存放转换后的数字,可以是整数或浮点数,第三个 ...
- Python 统计列表中重复元素的个数并返回其索引值
需求:统计列表list1中元素3的个数,并返回每个元素的索引 list1 = [3, 3, 8, 9, 2, 10, 6, 2, 8, 3, 4, 5, 5, 4, 1, 5, 9, 7, 10, 2 ...
随机推荐
- swift语言版本选择 - 解决XCode报错:The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported valu
转发链接:https://blog.csdn.net/nathan1987_/article/details/79757368 The “Swift Language Version” (SWIFT_ ...
- Head First Servlets & JSP 学习笔记 第二章 —— Web应用体系结构
Servlet没有main()方法,所以Servlet受其他人控制,这个其他人就是容器!而Tomcat就是一种容器. 容器向Servlet提供Http请求和Http响应:容器来调用Servlet的do ...
- jsplumb流程器使用3--connector
jsPlumb.getInstance内可以放一个对象 对象内可选地提供默认值: connector: 连接器(直线--a straight line, 贝塞尔曲线--a Bezier curv ...
- vue.js路由vue-router
学习网址:https://segmentfault.com/blog/vueroad 转载至:https://segmentfault.com/a/1190000009350679#articleHe ...
- js 正则表达式:密码必须由6-12位数字加字母组成
^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,12}$
- (转)system.badimageformatexception 未能加载文件或程序集
“/xxxxx”应用程序中的服务器错误. ------------------------------------------------------------------------------- ...
- PAT 1051 复数乘法(15 )(代码+思路)
1051 复数乘法(15 分) 复数可以写成 (A+Bi) 的常规形式,其中 A 是实部,B 是虚部,i 是虚数单位,满足 i2=−1:也可以写成极坐标下的指数形式 (R×e(Pi)),其 ...
- iOS.ChangeIniOS7
1. Multitasking in iOS 7 http://www.objc.io/issue-5/multitasking.html http://www.slideshare.net/mrem ...
- 杭电1518 Square(构成正方形) 搜索
HDOJ1518 Square Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- java性能优化之for循环
完成同样的功能,用不同的代码来实现,性能上可能会有比较大的差别,所以对于一些性能敏感的模块来说,对代码进行一定的优化还是很有必要的.今天就来说一下java代码优化的事情,今天主要聊一下对于for(wh ...