c#字典怎么获取第一个键值 List<对象>获取重复项,转成Dictionary<key,List<对象>>
c#字典怎么获取第一个键值
Dictionary<string, int> dictionary = new Dictionary<string, int>();
dictionary.Add("A1", );
dictionary.Add("A2", );
KeyValuePair<string,int> kvp=dictionary.FirstOrDefault();// 获取第一个
Console.WriteLine("Key={0}\tValue={1}",kvp.Key,kvp.Value);
Console.WriteLine(dictionary.Keys.First());
public class Car
{
public long ID { get; set; }
public string Name { get; set; }
public string OtherName { get; set; }
}
static void Main(string[] args)
{
List<Car> cars = new List<Car>();
cars.Add(new Car() { ID = , Name = "红旗", OtherName = "hq1" });
cars.Add(new Car() { ID = , Name = "奔驰", OtherName = "bc1" });
cars.Add(new Car() { ID = , Name = "宝马", OtherName = "bm1" });
cars.Add(new Car() { ID = , Name = "奔驰", OtherName = "bc2" });
cars.Add(new Car() { ID = , Name = "宝马", OtherName = "bm2" }); //同名
var carSame = cars.GroupBy(x => x.Name).Where(x => x.Count() > ).ToList();
foreach (var item in carSame)
{
Console.WriteLine(item.Key);
} Console.WriteLine("---*---");
var carSameArr = cars.GroupBy(x => x.Name).Where(x => x.Count() > ).Select(i => i.Key).ToArray();
foreach (string car in carSameArr)
{
Console.WriteLine(car);
} Console.WriteLine("---*---");
var carDict = cars.GroupBy(x => x.Name).ToDictionary(x => x.Key, x => x.ToList());
//以下是输出:
foreach (KeyValuePair<string, List<Car>> pair in carDict)
{
Console.WriteLine(pair.Key);
pair.Value.ForEach(x => Console.WriteLine(@"ID={0}, Name='{1}',OtherName='{2}'", x.ID, x.Name, x.OtherName));
Console.WriteLine();
} Console.ReadKey();
}
字典按value排序
Dictionary<string, int> dic = new Dictionary<string, int>();
dic.Add("小明", );
dic.Add("小李", );
dic.Add("小王", );
var list = dic.OrderBy(s => s.Value);
List排序
List 排序
Sort
OrderBy
参考:
c#字典怎么获取第一个键值 List<对象>获取重复项,转成Dictionary<key,List<对象>>的更多相关文章
- Json不知道key值情况下获取第一个键值对
JObject jsonData = new JObject(); jsonData.Add("1", "1"); jsonData.Add("2&q ...
- Map使用foreach遍历方式,Map获取第一个键值
List<Map<String, Object>> mapList = new ArrayList<>(); for (Map.Entry<String,O ...
- Statement和PreparedStatement的特点 MySQL数据库分页 存取大对象 批处理 获取数据库主键值
1 Statement和PreparedStatement的特点 a)对于创建和删除表或数据库,我们可以使用executeUpdate(),该方法返回0,表示未影向表中任何记录 b)对于创建和 ...
- php 获取数组第一个key 第一个键值对 等等
PHP 获取数组中的第一个元素或最后一个元素的值或者键值可以使用 PHP 自带的数组函数. PHP 获取数组中的第一个元素的值或者键值所使用的函数: current() - 返回数组中当前元素值(即: ...
- python(46):对字典进行排序,多键值排序
注:改于2017-12-07,python3 下 Removed dict.iteritems(), dict.iterkeys(), and dict.itervalues(). Instead: ...
- 获取当前 系统时间 + 获取当前URL 键值;
一://系统当前时间 function show(){ var mydate = new Date(); var str = "" + mydate.getFullYear() + ...
- SELECT INTO和INSERT INTO SELECT的区别 类似aaa?a=1&b=2&c=3&d=4,如何将问号以后的数据变为键值对 C# 获取一定区间的随即数 0、1两个值除随机数以外的取值方法(0、1两个值被取值的概率相等) C# MD5 加密,解密 C#中DataTable删除多条数据
SELECT INTO和INSERT INTO SELECT的区别 数据库中的数据复制备份 SELECT INTO: 形式: SELECT value1,value2,value3 INTO Ta ...
- Properties文件工具类的使用--获取所有的键值、删除键、更新键等操作
有时候我们希望处理properties文件,properties文件是键值对的文件形式,我们可以借助Properties类操作. 工具类如下:(代码中日志采用了slf4j日志) package cn. ...
- GridView内按钮Click获取记录主键值 在GridView控件中,每行记录内会放置一个铵钮,当用
在GridView控件中,每行记录内会放置一个铵钮,当用户点击这个铵钮时,获取当笔记录的主键值.可看演示(是一个gif动画,重新播放尝试刷新网页): 实现这个功能,你需要为GridView控件设置Da ...
随机推荐
- VMware安装Windows注意
安装Windows通用步骤,分区,重建分区表,重写MBR引导.安装即可. VMware安装Windows 如果进不了CM/ROM,在.vmx文件里: 加入一行:bios.forceSetupOnce ...
- 向mysql数据库插入大量数据
1. package com.zy.demo; import java.sql.Connection; import java.sql.DriverManager; import java.sql.P ...
- Developing ADF PageTemplates
Developing ADF PageTemplates In this hands-on, you learn how to create a page template and use this ...
- 求N的阶乘N!中末尾0的个数
求N的阶乘N!中末尾0的个数 有道问题是这样的:给定一个正整数N,那么N的阶乘N!末尾中有多少个0呢?例如:N=10,N=3628800,则N!的末尾有两个0:直接上干货,算法思想如下:对于任意一个正 ...
- apt-get clean 清除 apt 的缓存
#apt-get clean 再 df -h 看看,是不是可用空间增加了几个 G ?
- [Eclipse]Eclipse里对XML进行注释的快捷键
eclipse中编辑java或C/C++文件时,注释的快捷键均为 "CTRL + / ",编辑xml文件时,该快捷键无效. eclipse 针对 XML 注释:CTRL + SHI ...
- com.opensymphony.xwork2.config.ConfigurationManager.addConfigurationProvider
一月 31, 2016 5:06:31 下午 org.apache.catalina.core.StandardContext filterStart 严重: Exception starting f ...
- Cannot initialize Cluster. Please check your configuration for mapreduce.framework.name and the correspond server addresses.
解决方法: <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-m ...
- a标签的四个伪类
A标签的css样式 CSS为一些特殊效果准备了特定的工具,我们称之为“伪类”.其中有几项是我们经常用到的,下面我们就详细介绍一下经常用于定义链接样式的四个伪类,它们分别是: :link :v ...
- DevExpress TextEdit Focus问题
在标签切换时设置第一个TextEdit获取输入焦点无效,需要采用消息Post方式设置 //标签切换事件 xtraTabControl1.Selected += (s, e) => { if (e ...