C# 中 List.Sort运用(IComparer<T>)排序用法
/// <summary>
/// 比较人物类实例大小,实现接口IComparer
/// </summary>
public class InternetProtocolComparer : IComparer<InternetProtocol>
{
public int Compare(InternetProtocol x, InternetProtocol y)
{
if (x == null)
{
if (y == null)
return 0;
else
return -1;
}
else
{
if (y == null)
return 1;
else
{
if (string.IsNullOrWhiteSpace(x.IP) || string.IsNullOrWhiteSpace(y.IP))
return 0;
int xIP = int.Parse(x.IP.Replace(".", ""));
int yIP = int.Parse(y.IP.Replace(".", ""));
int retval = yIP.CompareTo(xIP);
return retval;
}
}
}
}
参考地址:http://blog.csdn.net/kongwei521/article/details/12133377
C# 中 List.Sort运用(IComparer<T>)排序用法的更多相关文章
- java中Collections.sort()方法实现集合排序
1.Integer/String泛型的List进行排序 List <Integer> integerlist = new ArrayList<Integer>(); //定 ...
- C++中使用sort对常见容器排序
本文主要解决以下问题 STL中sort的使用方法 使用sort对vector的排序 使用sort对map排序 使用sort对list排序 STL中sort的使用方法 C++ STL 标准库中的 sor ...
- Linux中cut,sort,uniq和wc的用法
一.cut是一个选取命令,就是将一段数据经过分析,取出我们想要的.一般来说,选取信息通常是针对"行"来进行分析的,并不是整篇信息分析的.1.语法格式为:cut [-bn] [fil ...
- 【转载】C#中自定义Sort的排序规则IComparable接口
C#中的List集合在排序的时候,如果不使用Lambda表达式进行排序的话,一般调用Sort()方法进行排序,如果希望Sort()方法排序后的结果跟我们预想的效果一致或者按照我们自定义的规则排序,则需 ...
- C#中的IComparable 和 IComparer 接口,实现列表中的对象比较和排序
借豆瓣某博主的话先对这两个接口进行一个解释: IComparable在要比较的对象的类中实现,可以比较该对象和另一个对象 IComparer在一个单独的类中实现,可以比较任意两个对象. 如果已经支持 ...
- C# List.Sort与IComparer接口及Comparison委托应用于集合排序
C#里List.Sort的用法 using System; using System.Collections.Generic; using System.Linq; using System.Text ...
- 模拟javascript中的sort排序
一.javascript中sort对数据进行排序的原理 sort() 方法对数组的元素做原地的排序,并返回这个数组. sort 可能不是稳定的.默认按照字符串的Unicode码位点排序; 语法:arr ...
- 用Java集合中的Collections.sort方法对list排序的两种方法
用Collections.sort方法对list排序有两种方法第一种是list中的对象实现Comparable接口,如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
- Java开发中使用sort排序
Java开发中使用sort排序 BaiduSpring https://baijiahao.baidu.com/s?id=1625440912158830354&wfr=spider& ...
随机推荐
- Secure gRPC with TLS/SSL
摘自:http://bbengfort.github.io/programmer/2017/03/03/secure-grpc.html Secure gRPC with TLS/SSL 03 Mar ...
- Swiper.js的腾讯新闻演示
演示效果地址:https://www.swiper.com.cn/demo/indexsample/: 代码: <!DOCTYPE html> <html> <head& ...
- MySQL load数据的时候自动更新时间
MySQL load数据的时候自动更新时间 前提 CREATE TABLE table_name ( dt varchar(255) NULL , ctime timestamp NULL ON UP ...
- Centos7 ss搭建
1.安装pip Pip 是 Python 的包管理工具,下载ss十分方便,但是centos是没有pip的,我们需要安装一个. yum install python-setuptools & e ...
- source activate my_env 失败,source not found
今天连接到服务器后,安装anaconda.虽然在安装过程中选择将anaconda加入到系统变量中去.而且在 ~/.bashrc 中确实有 export PATH="/home/xnh/ana ...
- 什么是POP3、SMTP和IMAP?
POP3 POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议.它是因特网电子邮件的第 ...
- 电商网站jQuery放大镜代码
分享一款电商网站jQuery放大镜代码.这是一款基于jquery.elevatezoom插件实现的类似淘宝放大镜代码,提供40多种参数,可自由配置多种效果,适合电商或图片类网站使用.效果图如下: 在线 ...
- CSS超过指定的宽度加省略号
/*table-layout:fixed 会使表格均等分*/ #TreeView1 table { width:290px; table-layout: fixed; } #TreeView1 td: ...
- RedHat 将应用程序添加到 Gnome 菜单中
. . . . . 在RedHat下面安装了Eclipse,是解压缩就能运行的,没有经过脚本安装所以无法自动在菜单中生成链接,但是可以通过手动的方式,步骤如下. 首先在/usr/share/appli ...
- APUE信号-程序汇总
APUE信号-程序汇总 近期重看APUE,发现对于非常多程序的要领还是没有全然理解.所以梳理下便于查看,并且有非常多值得思考的问题. 程序清单10- 1 捕获 SIGUSR1 和 SIGU ...