07_数组

  • 数组的声明与实例化

    • 名词解释

      • 数组:数组是一个容器,用来存储一系列相兼容的数据类型的变量;
      • 实例化:声明一个数组,并且赋初始值;
      • 数组长度:就是数组的容量,表示这个数组可以存储多少个数据;
      • 元素:数组中存储的数据称作这个数组中的元素;
    • 注意:
      • 1、一个数组的长度一旦决定了,就不能再修改了;
      • 2、如果在实例化的时候没有指定数组中元素的初始值,那默认值是数据类型和默认值;
  • 数组中元素的访问
    • 访问数组中的元素需要通过元素的下标
    • 在程序中,元素的下标是从0开始的,0,1,2...
  • 遍历数组
    • 将数组中的元素一一获取
    • 方法
      • 下标遍历

      • 快速枚举
  • params关键字
    • 是用来修饰形式参数的
    • 在调用方法的时候可以将数组中的元素直接写到参数列表中
    • 如果形参列表中既有params数组,也有可选参数,那么params数组需要在最后
  • 引用
  • ref/out
    • ref

      • 如果一个形式参数用ref来修饰,那么对应的实参也需要用ref来修饰
      • ref修饰的参数在传参的时候传递的其实是实参的地址
    • out
      • 如果一个形式参数用out来修饰,那么对应的实参也需要用out来修饰
      • out修饰的参数在传参的时候传递的其实是实参的地址
    • 两者不同
      • 在方法结束之前,必须对out参数金进行赋值,类似返回值
      • ref参数默认是有值的,指向实参的值,而out参数默认是未赋值的状态,不能直接使用
  • 数组操作
    • 排序

      • 选择排序

        • 思想:选择一个下标,然后用这个下标对应的元素依次和后面的每一个元素进行比较

      • 冒泡排序
        • 思想:依次比较两个相邻的元素

    • 查找
      • 二分查找

      • 顺序查找
  • 二维数组
    • 也是数组,数组中的元素还是数组

    • C#中的二维数组

C#学习笔记_07_数组的更多相关文章

  1. PHP学习笔记之数组篇

    摘要:其实PHP中的数组和JavaScript中的数组很相似,就是一系列键值对的集合.... 转载请注明来源:PHP学习笔记之数组篇   一.如何定义数组:在PHP中创建数组主要有两种方式,下面就让我 ...

  2. JavaScript学习笔记之数组(二)

    JavaScript学习笔记之数组(二) 1.['1','2','3'].map(parseInt) 输出什么,为什么? ['1','2','3'].map(parseInt)//[1,NaN,NaN ...

  3. Scala入门学习笔记三--数组使用

    前言 本篇主要讲Scala的Array.BufferArray.List,更多教程请参考:Scala教程 本篇知识点概括 若长度固定则使用Array,若长度可能有 变化则使用ArrayBuffer 提 ...

  4. JavaScript学习笔记:数组reduce()和reduceRight()方法

    很多时候需要累加数组项的得到一个值(比如说求和).如果你碰到一个类似的问题,你想到的方法是什么呢?会不会和我一样,想到的就是使用for或while循环,对数组进行迭代,依次将他们的值加起来.比如: v ...

  5. [Golang学习笔记] 07 数组和切片

    01-06回顾: Go语言开发环境配置, 常用源码文件写法, 程序实体(尤其是变量)及其相关各种概念和编程技巧: 类型推断,变量重声明,可重名变量,类型推断,类型转换,别名类型和潜在类型 数组: 数组 ...

  6. go 学习笔记之数组还是切片都没什么不一样

    上篇文章中详细介绍了 Go 的基础语言,指出了 Go 和其他主流的编程语言的差异性,比较侧重于语法细节,相信只要稍加记忆就能轻松从已有的编程语言切换到 Go 语言的编程习惯中,尽管这种切换可能并不是特 ...

  7. [学习笔记]JS 数组Array push相关问题

    前言: 今天用写了一个二维数组,都赋值为零,然后更新其中一个值,结果和预期是不一样,会整列的相同位置都是同一个值. 1.用Chrome的控制台样例如下: arrs[2][2] =1的赋值,竟然是三个数 ...

  8. es6学习笔记一数组(中)

    接着上一篇,给大家再分享一些数组的其他方法.大家也可以去点击这里学习数组更多的方法 concat方法: 概述:    concat() 方法将传入的数组或非数组值与原数组合并,组成一个新的数组并返回. ...

  9. TSPL学习笔记(4):数组相关练习

    最近研究函数式编程,都是haskell和scheme交互着看的,所以笔记中两种语言的内容都有,练习一般也都用两种语言分别实现. 本篇练习一些数组有关的问题,之所以与数组相关是因为在命令式编程中以下问题 ...

随机推荐

  1. jquery 数组添加不重复数据

    var columnCommentsArray = new Array(); $("input[name='columnComments']").each( function(){ ...

  2. nodejs初步

    nodejs是啥? 看名字,很容易认为它是一种开发语言,实质上,它更像是一种WEB服务器,一种工具.因为nodejs的作用,在于在服务器端解释.运行javascript.node.js本身不是开发语言 ...

  3. SVG可伸缩矢量图形

    SVG可伸缩矢量图形 总结 1.svg就像普通标签那么使用 2.svg是xml 3.svg是矢量图,而canvas是位图 学习要点 对HTML5中的SVG有初步的了解 什么是SVG 简单的说SVG文档 ...

  4. perl数组的长度与元素个数

    perl数组的长度与元素个数 $#数组名 ---表示数组中最后一个元素的下标,它等于元素个数减1. @数组名 ---表示数组中元素的个数. $标量=@数组名 ---将一个数组赋值给一个标量变量,标量得 ...

  5. hdu1814Peaceful Commission(2-SAT)

    Peaceful Commission Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  6. [App Store Connect帮助]三、管理 App 和版本(6.2)转让 App:App 转让条件

    App 必须满足以下条件才可转让: 转让者和接收者的帐户均不处于待处理或变更状态,且双方均已接受“协议.税务和银行业务”部分中最新版本的转让协议 该 App 的任何版本都不能使用 iCloud 权限 ...

  7. [Swift通天遁地]二、表格表单-(13)实时调整表单元素的显示和隐藏

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  8. xfs文件备份恢复篇一vm中linux新增磁盘

    XFS提供了 xfsdump 和 xfsrestore 工具协助备份XFS文件系统中的数据.xfsdump 按inode顺序备份一个XFS文件系统.centos7选择xfs格式作为默认文件系统,而且不 ...

  9. SpringBoot集成Swagger2 以及汉化 快速教程

    (一) Swagger介绍 Swagger 是一款RESTFUL接口的文档在线自动生成+功能测试功能软件 (二)为什么使用Swagger 在现在的开发过程中还有很大一部分公司都是以口口相传的方式来进行 ...

  10. BZOJ 3798 分块打表

    思路: 这题思路真是奇妙 先跑个暴力 每隔1e5打个表 块内暴力 打表程序: (开O3 15秒就跑完了) //By SiriusRen #include <bits/stdc++.h> u ...