static void Main(string[] args)
        {
            List<int> numbers = new List<int>();
            while (true)
            {
               #region 输出集合内容
                Console.WriteLine("集合中现有内容如下:");
                Console.WriteLine("===============================");
                if (numbers.Count==0)
                {
                    Console.WriteLine("集合中没有元素");
                }
                else
                {
                    foreach (int item in numbers)
                    {
                        Console.Write(item + "\t");
                    }
                    Console.WriteLine();
                }
                Console.WriteLine("===============================");
               #endregion
               #region 提示菜单,并获取用户输入的菜单选项
                Console.WriteLine("1.添加数据");
                Console.WriteLine("2.删除数据");
                Console.WriteLine("3.修改数据");
                Console.WriteLine("4.升序排序");
                Console.WriteLine("0.退出程序");
                Console.Write("请输入(0-4):");
                string input = Console.ReadLine();
               #endregion
               #region 根据用户输入的不同,做不同的处理
                if (input =="0")
                {
                    break;
                }
                else if(input == "1")
                {
                    #region 添加数据
                    Console.Write("请输入要添加的数字:");
                    int num = int.Parse(Console.ReadLine());
                    numbers.Add(num);
                    #endregion
                }
                else if (input == "2")
                {
                    #region 删除数据
                    Console.WriteLine("清输入你要删除的数据(只会删除第一个匹配项):");
                    int num = int.Parse(Console.ReadLine());
                    numbers.Remove(num);
                    #endregion
                }
                else if (input == "3")
                {
                    #region 修改数据
                    if (numbers.Count == 0)
                    {
                        Console.Write("集合中没有任何程序可以修改,按回车键继续");
                        Console.ReadLine();
                    }
                    else
                    {
                        int maxIndex = numbers.Count - 1;
                        Console.Write("请输入要删除的下标(0-" + maxIndex + ")");
                        int index = int.Parse(Console.ReadLine());
                        if (index < 0 || index > maxIndex)
                        {
                            Console.WriteLine("输入错误,下标超出范围,按回车键继续");
                            Console.ReadLine();
                        }
                        else
                        {
                            Console.Write("请输入新的数据:");
                            int newnum = int.Parse(Console.ReadLine());
                            numbers[index] = newnum;
                        }
                    }
                    #endregion
                }
                else if (input == "4")
                {
                    #region 升序排序
                    for (int i = 0; i < numbers.Count-1; i++)
                    {
                        for (int j = i+1; j < numbers.Count; j++)
                        {
                            if (numbers[i] > numbers[j])
                            {
                                int temp = numbers[i];
                                numbers[i] = numbers[j];
                                numbers[j] = temp;
                            }
                        }
                    }
                    #endregion
                }
              

               #endregion
                    //控制台清屏
                Console.Clear();
            }
        }

用C#语言编写:集合管理器的更多相关文章

  1. WCF 服务的集合管理器的设计

    今天是2019年2月1日,时间过得针对,马上就年底了,当前新年也离我们越来越近了.在此,我也祝福经常浏览我博客的朋友们“新年快乐.阖家欢乐”,来年有一个好彩头.在即将结束这一年之计,写今年的最后一片文 ...

  2. with上下文管理器

    术语 要使用 with 语句,首先要明白上下文管理器这一概念.有了上下文管理器,with 语句才能工作. 下面是一组与上下文管理器和with 语句有关的概念. 上下文管理协议(Context Mana ...

  3. ZendFramework-2.4 源代码 - 关于服务管理器

    // ------ 决定“服务管理器”配置的位置 ------ // 1.在模块的入口类/data/www/www.domain.com/www/module/Module1/Module.php中实 ...

  4. 实用算法系列之RT-Thread链表堆管理器

    [导读] 前文描述了栈的基本概念,本文来聊聊堆是怎么会事儿.RT-Thread 在社区广受欢迎,阅读了其内核代码,实现了堆的管理,代码设计很清晰,可读性很好.故一方面了解RT-Thread内核实现,一 ...

  5. WPF技巧:通过代码片段管理器编写自己常用的代码模板提示效率

    在写自定义控件的时候,有一部分功能是当内部的值发生变化时,需要通知控件的使用者,而当我在写依赖项属性的时候,我可以通过popdp对应的代码模板来完成对应的代码,但是当我来写属性更改回调的时候,却发现没 ...

  6. DVD管理器集合版

    利用所学的集合写出的DVD管理系统,运用到了所学到集合基础. import java.text.ParseException; import java.text.SimpleDateFormat; i ...

  7. 运用集合来做一个DVD管理器(全代码)

    package DVD;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Array ...

  8. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

  9. 1.Cocos2d-x-3.2编写3d打飞机,粒子管理器代码

     Cocos2d-x中的一个单例效果: #ifndef __Moon3d__ParticleManager__ #define __Moon3d__ParticleManager__ #inclu ...

随机推荐

  1. Git 用户名和邮箱

    用户名邮箱的作用 用户名和邮箱地址是本地git客户端的一个变量,不随git库而改变. 每次commit都会用用户名和邮箱纪录. github的contributions统计就是按邮箱来统计的. 查看用 ...

  2. 妙用ES6解构和扩展运算符让你的代码更优雅

    http://www.cnblogs.com/chrischjh/p/4848934.html

  3. JavaScript操作符汇总

    操作符 JavaScript 有赋值.比较.算术.位.逻辑.字符串和特殊运算符.本章描述了操作符,以及关于操作符优先级的一些信息. 表 2.1 JavaScript 所有操作符简明列表. 表 2.1 ...

  4. Kettle参数化配置

    Kettle参数化配置 在做系统化的Kettle实现方案,我们基本要定义一些不变的参数,在整个生命周期中使用,或者设置一些特定的参数,在一些特定的JOB中使用.参数化配置有利用我们Kettle实现规范 ...

  5. 如何将ubuntu控制台输出到串口?

    如何将ubuntu控制台输出到串口? Linux使用ubuntu14.04发行版本 操作步骤: 1.修改/etc/default/grub ## Modify this line by leekwen ...

  6. 第3章 PCI总线的数据交换

    PCI Agent设备之间,以及HOST处理器和PCI Agent设备之间可以使用存储器读写和I/O读写等总线事务进行数据传送.在大多数情况下,PCI桥不直接与PCI设备或者HOST主桥进行数据交换, ...

  7. FusionCharts封装-Data

    DataSet.java: /** * @Title:DataSet.java * @Package:com.fusionchart.model * @Description:FusionCharts ...

  8. Java中替换HTML标签的方法

    1.替换HTML标签 replaceAll("\\&[a-zA-Z]{0,9};", "").replaceAll("<[^>]* ...

  9. return *this 与return this的区别

    return *this返回当前对象的引用(也就是返回当前对象) return this返回当前对象的地址. #include <iostream> using namespace std ...

  10. C#中各种计时器 Stopwatch、TimeSpan

    1.使用 Stopwatch 类 (System.Diagnostics.Stopwatch)Stopwatch 实例可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间.在典型的 St ...