//语法糖Range
static void Main(string[] args)
{
var myArray = new string[]
{
"Item1",
"Item2",
"Item3",
"Item4",
"Item5"
};
for(int i=1; i <= 3; i++)
{
Console.WriteLine(myArray[i]);
}
foreach (var item in myArray[1..4])
{
Console.WriteLine(item);
}
foreach (var item in myArray[1..])
{
Console.WriteLine(item);
}
foreach (var item in myArray[..3])
{
Console.WriteLine(item);
}
foreach (var item in myArray[..])
{
Console.WriteLine(item);
}
foreach (var item in myArray[1..^1])
{
Console.WriteLine(item);
}
Console.ReadLine();
}

当我们编写1..4的时候,看起来就好像我们在使用新的语法,实际上这只是个语法糖,实际上它初始化一个Range类对象,就好像我们可以使用{“1”, “2”, “3”}就可以创建一个数组一样。

static void Main(string[] args)
{
var myArray = new string[]
{
"Item1",
"Item2",
"Item3",
"Item4",
"Item5"
}; Range range = 1..4; foreach (var item in myArray[range])
{
Console.WriteLine(item);
} Console.ReadLine();
}

替代Substring方法

Console.WriteLine("123456789"[1..4]);

C#中的范围类型(Range Type)的更多相关文章

  1. C# 8中的范围类型(Range Type)

    C# 8.0中加入了一个新的范围类型(Range Type). 这里我们首先展示一些代码,并一步一步为代码添加一些不同的东西, 为大家展示一下范围类型的功能和用法. 我们最原始的代码如下: stati ...

  2. C# 8.0 范围类型 Range Type

    目录 C# 8 范围类型 Range Type: 范围缩写: 从一个索引开始到数组的最后一个对象 从数组的第一个对象到指定索引 整个数组: 从数组的某个索引开始一直到距数组尾部某个索引: 范围类型 替 ...

  3. PHP处理上传文件信息数组中的文件类型 正确获取

    PHP处理上传文件信息数组中的文件类型$_FILES['type']由客户端浏览器提供,有可能是黑客伪造的信息,请写一个函数来确保用户上传的图像文件类型真实可靠 如果是一般文件则通过 mime_con ...

  4. C#中的枚举类型(enum type)

    ylbtech 原文 C#中的枚举类型(enum type) 概念 枚举类型(enum type)是具有一组命名常量的独特的值类型.在以下示例中: enum Color { Red, Green, B ...

  5. C#中的值类型(value type)与引用类型(reference type)的区别

    ylbtech- .NET-Basic:C#中的值类型与引用类型的区别 C#中的值类型(value type)与引用类型(reference type)的区别 1.A,相关概念返回顶部     C#中 ...

  6. C# 中的结构类型(struct type)

    ylbtech- .NET-Basic:C# 中的结构类型(struct type) C# 中的结构类型(struct type) 1.A,相关概念返回顶部   像类一样,结构(struct)是能够包 ...

  7. html <input>标签类型属性type(file、text、radio、hidden等)详细介绍

    html <input>标签类型属性type(file.text.radio.hidden等)详细介绍 转载请注明:文章转载自:[169IT-最新最全的IT资讯] html <inp ...

  8. Java中的枚举类型详解

    枚举类型介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常量的定义 ...

  9. 使用SqlServer中的float类型时发现的问题

    在做项目中,使用了float类型来定义一些列,如:Price,但是发现了很多问题1.当值的位数大于6位是float型再转varchar型的时候会变为科学技术法显示    此时只好将float型转换成n ...

  10. Python 中的鸭子类型和猴子补丁

    原文链接: Python 中的鸭子类型和猴子补丁 大家好,我是老王. Python 开发者可能都听说过鸭子类型和猴子补丁这两个词,即使没听过,也大概率写过相关的代码,只不过并不了解其背后的技术要点是这 ...

随机推荐

  1. Microsoft Project 使用教程

    Microsoft Project使用教程 一.新建项目 1. Project界面操作 "文件" -→ "新建" -→ "空白项目" 建议在 ...

  2. ptyhon基础课程_2

    10 输入 # 例一 user_name = input ("请输入姓名:") message = user_name + "shaobing" print ( ...

  3. 转载-Shell脚本中字符串截取功能

    在Shell脚本编写中,有几个地方都是要用到字符串截取的功能,那将这块的内容进行下记录: 1.字符串变量的截取操作 对字符串变量的截取操作一般都是通过${操作符}的方式进行 1)从指定位置index截 ...

  4. [转]idea 试用30天“无限续费”idea破解

    首先打开idea设置 左上角点击file-->setting-->Plugins   https://plugins.zhile.io 然后点击 确定 ("OK") 点 ...

  5. sudo apt-get install libncurses5-dev sudo apt-get install u-boot-tools

    sudo apt-get install libncurses5-dev sudo apt-get install u-boot-tools

  6. H5网页CAD中webpack使用详细说明

    前言 webpack是用于现代 JavaScript 应用程序的静态模块打包工具,用以构建一个前端工程化项目,如vue-cli create-react-app等脚手架工具都是基于webpack的构建 ...

  7. 设置NTP校时

    设置NTP校时-作为客户端 @echo off rem 以管理员身份执行文件 rem 适用于域控PDC主机,对于未加域的计算机可直接使用Internet时间同步 rem 获取管理员权限 %1 msht ...

  8. RDD持久化和检查点

    val count: RDD[(String, Int)] = mapRDD.reduceByKey(_ + _)count.collect() val value: RDD[(String, Ite ...

  9. 【文献阅读】Automatic berthing for an underactuated unmanned surface vehicle: A real-time motion planning approach

    (1)文章工作 This paper presents Extended Dynamic Window Approach (EDWA) for the automatic berthing of an ...

  10. 处理GET和POST的中文乱码问题

    一.doGet 1.先获取iso的错误字符串 2.回退.重编(用UTF-8) String name = request.getParameter("username"); byt ...