zoukankan      html  css  js  c++  java
  • [Clr via C#读书笔记]Cp16数组

    Cp16数组

    一维数组,多维数组,交错数组;引用类型;P338的图非常的清楚地描述了值类型和引用类型在托管堆中的关系;越界检查;

    数组初始化

    数组初始化器;
    四种写法

    string[] names = new string[] { "hello", "world" };  
    var dogs = new string[] { "hello", "world" }; 
    var cats = new[] { "hello", "world" };
    string[] datas = { "hello", "world" };
    

    数组的转型

    数组类型必须维数相同,且值类型不能转换成其他类型;
    Array.Copy
    数组的协变

    Array的静态方法

    定义了很多有用的静态方法

    所有的数组都隐式的实现了IEnumerable,ICollection,IList

    所以也就可以提供这些接口对应的操作。

    数组的传递和返回

    传递的是引用,所以被改的是本身;
    Array.Copy执行的是浅拷贝;
    返回数据类型最好返回一个全新的数组,涉及到访问权限控制;
    不要返回null,返回0个元素的数组;

    创建下限非0的数组

    CreateInstance方法

    数组的访问性能

    0基的性能好于非0基,实际上非零基的很少用;

    不安全的数组访问和固定大小的数据

    这部分了解即可

  • 相关阅读:
    桐花万里python路-基础篇-01-历史及进制
    linux-tar归档文件
    python-常识
    目录权限修改
    linux常用命令
    battery-historian 使用方法
    cp --复制命令
    adb与bat混用启动与杀死应用程序
    monkey 命令
    INSERT INTO SELECT 语句
  • 原文地址:https://www.cnblogs.com/newlifechou/p/8178799.html
Copyright © 2011-2022 走看看