C#学习笔记_07_数组
07_数组
- 数组的声明与实例化

- 名词解释
- 数组:数组是一个容器,用来存储一系列相兼容的数据类型的变量;
- 实例化:声明一个数组,并且赋初始值;
- 数组长度:就是数组的容量,表示这个数组可以存储多少个数据;
- 元素:数组中存储的数据称作这个数组中的元素;
- 注意:
- 1、一个数组的长度一旦决定了,就不能再修改了;
- 2、如果在实例化的时候没有指定数组中元素的初始值,那默认值是数据类型和默认值;
- 名词解释
- 数组中元素的访问

- 访问数组中的元素需要通过元素的下标
- 在程序中,元素的下标是从0开始的,0,1,2...
- 遍历数组
- 将数组中的元素一一获取
- 方法
- 下标遍历

- 快速枚举

- 下标遍历
- params关键字

- 是用来修饰形式参数的
- 在调用方法的时候可以将数组中的元素直接写到参数列表中
- 如果形参列表中既有params数组,也有可选参数,那么params数组需要在最后

- 引用

- ref/out
- ref
- 如果一个形式参数用ref来修饰,那么对应的实参也需要用ref来修饰
- ref修饰的参数在传参的时候传递的其实是实参的地址

- out
- 如果一个形式参数用out来修饰,那么对应的实参也需要用out来修饰
- out修饰的参数在传参的时候传递的其实是实参的地址
- 两者不同
- 在方法结束之前,必须对out参数金进行赋值,类似返回值
- ref参数默认是有值的,指向实参的值,而out参数默认是未赋值的状态,不能直接使用
- ref
- 数组操作
- 排序
- 选择排序
- 思想:选择一个下标,然后用这个下标对应的元素依次和后面的每一个元素进行比较

- 思想:选择一个下标,然后用这个下标对应的元素依次和后面的每一个元素进行比较
- 冒泡排序
- 思想:依次比较两个相邻的元素

- 思想:依次比较两个相邻的元素
- 选择排序
- 查找
- 二分查找

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

- C#中的二维数组

- 也是数组,数组中的元素还是数组
C#学习笔记_07_数组的更多相关文章
- PHP学习笔记之数组篇
摘要:其实PHP中的数组和JavaScript中的数组很相似,就是一系列键值对的集合.... 转载请注明来源:PHP学习笔记之数组篇 一.如何定义数组:在PHP中创建数组主要有两种方式,下面就让我 ...
- JavaScript学习笔记之数组(二)
JavaScript学习笔记之数组(二) 1.['1','2','3'].map(parseInt) 输出什么,为什么? ['1','2','3'].map(parseInt)//[1,NaN,NaN ...
- Scala入门学习笔记三--数组使用
前言 本篇主要讲Scala的Array.BufferArray.List,更多教程请参考:Scala教程 本篇知识点概括 若长度固定则使用Array,若长度可能有 变化则使用ArrayBuffer 提 ...
- JavaScript学习笔记:数组reduce()和reduceRight()方法
很多时候需要累加数组项的得到一个值(比如说求和).如果你碰到一个类似的问题,你想到的方法是什么呢?会不会和我一样,想到的就是使用for或while循环,对数组进行迭代,依次将他们的值加起来.比如: v ...
- [Golang学习笔记] 07 数组和切片
01-06回顾: Go语言开发环境配置, 常用源码文件写法, 程序实体(尤其是变量)及其相关各种概念和编程技巧: 类型推断,变量重声明,可重名变量,类型推断,类型转换,别名类型和潜在类型 数组: 数组 ...
- go 学习笔记之数组还是切片都没什么不一样
上篇文章中详细介绍了 Go 的基础语言,指出了 Go 和其他主流的编程语言的差异性,比较侧重于语法细节,相信只要稍加记忆就能轻松从已有的编程语言切换到 Go 语言的编程习惯中,尽管这种切换可能并不是特 ...
- [学习笔记]JS 数组Array push相关问题
前言: 今天用写了一个二维数组,都赋值为零,然后更新其中一个值,结果和预期是不一样,会整列的相同位置都是同一个值. 1.用Chrome的控制台样例如下: arrs[2][2] =1的赋值,竟然是三个数 ...
- es6学习笔记一数组(中)
接着上一篇,给大家再分享一些数组的其他方法.大家也可以去点击这里学习数组更多的方法 concat方法: 概述: concat() 方法将传入的数组或非数组值与原数组合并,组成一个新的数组并返回. ...
- TSPL学习笔记(4):数组相关练习
最近研究函数式编程,都是haskell和scheme交互着看的,所以笔记中两种语言的内容都有,练习一般也都用两种语言分别实现. 本篇练习一些数组有关的问题,之所以与数组相关是因为在命令式编程中以下问题 ...
随机推荐
- ios MetalPerformanceShaders 使用总结
MPSCNNConvolution 1.初始化时传人 UnsafePointer<Float> 时要传入w,不能是 &(w[0]).否则w其实传入失败,卷积的结果是nan或inf. ...
- Zookeeper01
ZooKeeper数据模型Znode
- Delphi中ARC内存管理的方向
随着即将发布的10.3版本,RAD Studio R&D和PM团队正在制作Delphi在内存管理方面的新方向. 几年前,当Embarcadero开始为Windows以外的平台构建新的Delph ...
- 硬盘-RAID 5组建
没发正文之前本人先声明一下----本文是转载 这篇文章简直是太精彩了,呵呵 ,实在是忍不住了,一定要贴出来,让大家分享! 原作者:唐华 责任编辑:xiexiaojin 我们生活在一个历史记录在硬盘上的 ...
- 洛谷 p1625
高精度 我以为这题必有高论,怎么想也想不出来,没想到竟是如此粗鄙做法. 我们写一个高精度模拟一下,然后枚举约数看是否能约分,由于我不会高精度除法,就抄了一发 其实这种两项之比和项数有关的数列是不能推通 ...
- 解决微信H5页面软键盘弹起后页面下方留白的问题(iOS端)
前言:微信H5项目,ios端出现了软键盘输完隐藏后页面不会回弹,下方会有一大块留白 最近微信和ios都有版本升级,不知道是哪边升级造成的,但是经过测试,软键盘收起后,再滚动一下页面,下面的留白就会消失 ...
- 【BZOJ3110】[ZJOI2013]K大数查询(整体二分)
题目: BZOJ3110 分析: 整体二分模板题-- 先明确一下题意:每个位置可以存放多个数,第一种操作是"加入 (insert) "一个数而不是"加上 (add) &q ...
- jQuery中关于如何使用animate自定义动画
动画 animate() 01.animate()方法的简单使用 有些复杂的动画通过之前学到的几个动画函数是不能够实现,这时候就是强大的animate方法了. 操作一个元素执行3秒的淡入动画,对比下一 ...
- ZfNet解卷积:可视化CNN模型( PythonCode可视化Cifar10)
原文链接:caffe Model的可视化 snapshot: 6000 一个在线可视化小工具:http://blog.csdn.net/10km/article/details/52713 ...
- pycuda installation error: command 'gcc' failed with exit status 1
原文:python采坑之路 Setup script exited with error: command 'gcc' failed with exit status 1 伴随出现"cuda ...