Span复习

using System;

namespace Span复习
{
class Program
{
static void Main(string[] args)
{
//Console.WriteLine("Hello World!");
//IntroSpans();
//var span1 = IntroSpans(); //CreatSlices(span1); int[] int1 = {,,,,,,,,,,};
int[] int2 = {,,,,,,};
var span1 = new Span<int>(int1);
var span2 = new Span<int>(int2);
ChangeValues(span1,span2);
} //使用Span<T>,可以直接访问数组元素。数组的元素没有复制,但是它们可以直接使用,这比复制要快。
private static Span<int> IntroSpans()
{
int[] arr1 = new int[] {,,,,,};
var span1 = new Span<int>(arr1);
span1[] = ;
System.Console.WriteLine($"arr1[1] is changed via span[1]: {arr1[1]}");
System.Console.WriteLine($"span1[1]: {span1[1]}");
return span1; } //创建切片
private static void CreatSlices(Span<int> span1)
{
System.Console.WriteLine(nameof(CreatSlices));
int[] arr2 = {,,,,,,};
//var span2 = new Span<int>(arr2);
var span3 = new Span<int>(arr2,start:,length:);
var span4 = span1.Slice(start:,length:); DisplaySpan("Content of span3:",span3);
DisplaySpan("Content of span4:" ,span4);
System.Console.WriteLine(); } //DisplaySpan()用于显示Span的内容
private static void DisplaySpan(string title,ReadOnlySpan<int> span)
{
System.Console.WriteLine(title);
for(int i = ;i<span.Length;i++)
{
System.Console.Write($"{span[i]} "); }
System.Console.WriteLine(); } //使用Span改变值
private static void ChangeValues(Span<int> span1,Span<int> span2)
{
System.Console.WriteLine(nameof(ChangeValues));
var span4 = span1.Slice(start:);
span4.Clear();//清除了span1从第5位开始后面的数,并用数0填充
DisplaySpan("content of span1",span1);
var span5 = span2.Slice(start:,length:);
span5.Fill();//span2从第4位开始的三位,用数42来填充
DisplaySpan("content of span2",span2);
span5.CopyTo(span1);
DisplaySpan("content of span1",span1);
if(!span1.TryCopyTo(span4))
{
System.Console.WriteLine("Couldn't copy span1 to span4 because span4 is to small ");
System.Console.WriteLine($"length of span1: {span1.Length},length of span4: {span4.Length} "); }
System.Console.WriteLine(); }
}
}

使用Span改变值事例输出如下

ChangeValues
content of span1 content of span2 content of span1 Couldn't copy span1 to span4 because span4 is to small
length of span1: ,length of span4:

Span复习的更多相关文章

  1. 《CSS权威指南》基础复习+查漏补缺

    前几天被朋友问到几个CSS问题,讲道理么,接触CSS是从大一开始的,也算有3年半了,总是觉得自己对css算是熟悉的了.然而还是被几个问题弄的"一脸懵逼"... 然后又是刚入职新公司 ...

  2. jQuery 复习

    jQuery 复习 基础知识 1, window.onload $(function(){});   $(document).ready(function(){}); 只执行函数体重的最后一个方法,事 ...

  3. css重点章节复习—布局-边框-边距-浮动 (部分)

    css重点章节复习—布局-边框-边距-浮动 在第二个任务中,这一块的后面那条线真的弄了很久.起初也是在html里面写的代码.之后觉得这样不好,想到第一个页面中用到的border-bottom和bord ...

  4. Jquery 复习练习(01)

    Jquery 复习练习 window.onload = function() {} == $(function() {}); 千万注意:js对象和jq对象的区别,这也是常常犯的错误 js对象举例: w ...

  5. html 复习

    通过几次修改网页的经历,发现相关基础知识之薄弱,不得不再次花时间复习一遍.希望这是最后一次. 一 通用声明 HTML5 <!DOCTYPE html> HTML 4.01 <!DOC ...

  6. 23----2013.07.01---Div和Span区别,Css常用属性,选择器,使用css的方式,脱离文档流,div+css布局,盒子模型,框架,js基本介绍

    01 复习内容 复习之前的知识点 02演示VS创建元素 03div和span区别 通过display属性进行DIV与Span之间的转换.div->span 设置display:inline   ...

  7. span 右浮动折行 解决ie6/7中span右浮动折行问题

    A floated box is shifted to the left or right until its outer edge touches the containing block edge ...

  8. ②jquery复习

    # jQuery 复习--by 传智前端与移动开发学院 ## 1. jQuery是什么?(了解)+ www.github.com+ jQuery 其实就是一堆的js函数,是普通的js,只不过应用广泛, ...

  9. 复习上学期的HTML+CSS(1)

    自己跟着网上教程复习上学期的HTML+CSS,因为已经忘得差不多了,而且现在学的js也要以HTML+CSS为基础,坚持每天持续更新. n  B/S 网络结构   Browser/Server 浏览器/ ...

随机推荐

  1. Python 之pyinstaller模块打包成exe文件

    一.安装pyinstaller pip install pyinstaller 二.下载安装pyinstaler运行时所需要的windows扩展pywin32 https://github.com/m ...

  2. macOS 系统下载地址

    macOS Catalina macOS Mojave macOS High Sierra macOS Sierra 点击可以直接在MAC App Store下载,如果不能下载就多试几次.

  3. ubuntu之路——day11.5 迁移学习

    在深度学习领域中,最强力的理念之一就是可以将神经网络学习的一种知识应用到另一个独立的任务中. 看上面的例子,首先我们有一个已经完成训练的神经网络,其目标是图像识别,我们有了绿色的1000000张图片并 ...

  4. Mysql 查看所有线程,被锁的表等

    ## 查看所有MYSQl相关的线程 > show full processlist; ## 杀死线程id为2的线程 > kill 2 ## 查看服务器状态 > show status ...

  5. appium+python 微信小程序的自动化

    sudo kill -9 $(lsof -i:8889 -t) mitmweb -p 8889 -s addons.py mitmdump -q  -p 8889 -s addons.py http: ...

  6. web常用服务架构

    架构风格就是一种项目的设计模式.常见的架构风格有基于客户端与服务端的.基于组件模型的(EJB).分层架构(MVC).面向服务架构(SOA)等. 一.单体架构 单体架构也称为单体系统或单体应用,就是一种 ...

  7. Tensorflow 2 模型默认保存路径

    Tensorflow 2 模型默认保存路径 商务合作,科技咨询,版权转让:向日葵,135-4855__4328,xiexiaokui#qq.com 保存: import datetime now=da ...

  8. SQL Server 查找空值

    需要查找某一列为空的数据 )NULL不能用 “=”运算符 )NULL不支持+-*/ <> )不同的函数对NULL的支持不一样,使用前要测试,不能靠猜,不能凭经验

  9. SpringMVC 集成 jackson,日志格式报错:org.codehaus.jackson.map.JsonMappingException: Can not construct instance of java.util.Date from String value

    org.codehaus.jackson.map.JsonMappingException: Can not construct instance of java.util.Date from Str ...

  10. Amazon aws s3 加速

    aws s3加速 - 工长山的专栏 - CSDN博客https://blog.csdn.net/xuanwu_yan/article/details/79160034 [实测有效]“解决国内访问s3. ...