C# Net 合并int集合为字符串,如:输入1,2,3,4,8 输出1~4,8

粘贴代码使用:

        /// <summary>
/// 合并int集合,如1,2,3,4,8 输出1~4,8
/// </summary>
public static string MergeInts(IEnumerable<int> ints)
{
string CollectionNumberStr = string.Empty; List<string> CollectionNumberStrArr = new List<string>();
if (ints != null && ints.Count() > )
{
var query = ints.OrderBy(p => p).Aggregate<int, List<List<int>>>(null, (m, n) =>
{
if (m == null)
return new List<List<int>>() { new List<int>() { n } };
if (m.Last().Last() != n - )
m.Add(new List<int>() { n });
else
m.Last().Add(n);
return m;
});
query.ForEach(p =>
{
int First = p.First();
int Last = p.Last(); if (First == Last)
CollectionNumberStrArr.Add(First.ToString());
else
CollectionNumberStrArr.Add(First + "~" + Last);
});
CollectionNumberStr = CollectionNumberStr.Trim();
}
return CollectionNumberStr = string.Join("、", CollectionNumberStrArr);
}

C# Net 合并int集合为字符串,如:输入1,2,3,4,8 输出1~4,8的更多相关文章

  1. 【笔记】Python基础二:数据类型之集合,字符串格式化,函数

    一,新类型:集合 集合出现之前 python_l = ['lcg','szw','zjw'] linux_l = ['lcg','szw','sb'] #循环方法求交集 python_and_linu ...

  2. python 字典,列表,集合,字符串,基础进阶

    python列表基础 首先当然是要说基础啦 列表list 1.L.append(object) -> None 在列表末尾添加单个元素,任何类型都可以,包括列表或元组等 2.L.extend(i ...

  3. .net string类型集合转int集合

    1.string集合转int集合 //string类型的集合 List<string> tempStr = new List<string>() { "21" ...

  4. Python入门篇-基础数据类型之整型(int),字符串(str),字节(bytes),列表(list)和切片(slice)

    Python入门篇-基础数据类型之整型(int),字符串(str),字节(bytes),列表(list)和切片(slice) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Py ...

  5. python学习6—数据类型之集合与字符串格式化

    python学习6—数据类型之集合与字符串格式化 1. 使用id()可以查看一个变量的内存地址: name = 'alex' id(name) 2. 进制转换 十进制转换为二进制等: a = 10 # ...

  6. C语言:求n(n<10000)以内的所有四叶玫瑰数。-将字符串s1和s2合并形成新的字符串s3,先取出1的第一个字符放入3,再取出2的第一个字符放入3,

    //函数fun功能:求n(n<10000)以内的所有四叶玫瑰数并逐个存放到result所指数组中,个数作为返回值.如果一个4位整数等于其各个位数字的4次方之和,则称该数为函数返回值. #incl ...

  7. Python中列表、元组、字典、集合与字符串,相关函数,持续更新中……

    本篇博客为博主第一次学 Python 所做的笔记(希望读者能够少点浮躁,认真阅读,平心静气学习!) 补充: 列表.元组和字符串共同属性: 属于有序序列,其中的元素有严格的先后顺序 都支持双向索引,索引 ...

  8. [opencv]拼接合并轮廓集合mergeContours

    /** * 拼接合并轮廓集合 * @param contours * @return */ vector<vector<Point>> mergeContours(vector ...

  9. java中数组、集合、字符串之间的转换,以及用加强for循环遍历

    java中数组.集合.字符串之间的转换,以及用加强for循环遍历: @Test public void testDemo5() { ArrayList<String> list = new ...

随机推荐

  1. Java8——Stream

    /* * 一.Stream API 的操作步骤: * * 1. 创建 Stream * * 2. 中间操作 * * 3. 终止操作(终端操作) */ public class TestStreamaA ...

  2. zz深度学习论文合集大全

        Pull requestsIssues Marketplace Explore             Learn Git and GitHub without any code! Using ...

  3. 理解Javascript执行过程

    Javascript是一种解释型的动态语言. 在程序中,有编译型语言和解释型语言.那么什么是编译型语言,什么是解释型语言呢? 编译型语言: 它首先将源代码编译成机器语言,再由机器运行机器码(二进制). ...

  4. C++——二维vector初始化大小方法

    初始化二维vector,为r*c的vector,所有值为0.1.直接用初始化方法(刚开始没想到) vector<vector<int> > newOne(r, vector&l ...

  5. 微信小程序警告:Now you can provide attr "wx:key" for a "wx:for" to improve performance.

    那是因为在<block wx:for-items="{{imgUrls}}">中不存在wx:key="imgUrls"所以才导致报了个警告. 写成& ...

  6. 【BZOJ3529】[SDOI2014] 数表(莫比乌斯反演)

    点此看题面 大致题意: 规定一个\(n*m\)数表中每个数为\(\sum_{d|i,d|j}d\),求数表中不大于\(a\)的数之和. 不考虑限制 我们先不考虑限制,来推一波式子. 首先,易知数表中第 ...

  7. 关于Design Complier/Library Compiler的跌坑(坑爹)记录

    最近需要用DC做一些事,然后需要转库,中午偷个闲,特来记录一下中间的一些坎坷. 1.首先是要转库.我们只有.lib文件的格式,所以需要把.lib文件转换成.db格式.然后坑来了!!!DC2015及以后 ...

  8. Mac:输出phpinfo的信息

    输出phpinfo的信息1.echo '<?php phpinfo(); ?>' | php 2>&12.php -a 进入Interactive shell模式然后:pri ...

  9. C# HTTP系列8 GET与POST对比说明

    系列目录     [已更新最新开发文章,点击查看详细]  HTTP协议,即超文本传输协议(Hypertext transfer protocol).是一种详细规定了浏览器和万维网(WWW = Worl ...

  10. # Leetcode 67:Add Binary(二进制求和)

    Leetcode 67:Add Binary(二进制求和) (python.java) Given two binary strings, return their sum (also a binar ...