初始C#(二)
一 数组
定义:能存放任意多个同类型数据
声明与赋值:声明:数据类型[ ]变量名 赋值:变量名=new 数据类型[长度]
读取与修改:读取:变量名[] 修改:变量名[]=值
一个数组在创建后,它的每一数组项的值为数组项类型的默认值。如:int/double这种数字类型的,默认值为0.
char字符额默认值为\0
string字符串的默认值为null
bool的默认值为false
读取数组长度:变量名.Length
数组的遍历:把数组中的所有项取出来
可以通过循环来实现,循环变量从0开始,依次取到下标最大的数据。在循环体中,将下标作为变量,就可以输出每一项的值。
数组的定长性:一个数组在创建后,它的长度是不变的。
二 List集合
(一)创建
定义:集合同数组相同,都是存放多个同类型数据。
声明:List<数据类型>变量名
赋值:new List<数据类型>
初始化:
(二)操作
添加数据:变量名.Add(要添加的数据);
插入数据:变量名.Insert(要插入的数据);
删除数据:变量名.RemoveAt(索引);
变量名.Remove(数据);
修改元素:变量名[索引]=值;
获取元素的数量:变量名.count;
三 数组和集合的不同
定长:数组具有,集合不具有,集合中存放数据的长度可以改变。
占用内存:数组少,集合多。
遍历速度:数组快,集合慢。
数组能实现的集合也能实现,而集合能实现的,数组不一定能实现。
初始化:
四 foreach(只读循环)
(一)该循环只能用于遍历数组或集合。
代码格式:foreach(数据类型 变量 in 数组或集合)
{
循环体
}
(二)forrach与for的区别
foreach: 只用于遍历数组或集合,不能更改循环目标,遍历速度快,执行效率高。
for:可以用于任何形式的重复行为,在循环体重可以进行任意操作,便利速度慢,执行效率低。
初始C#(二)的更多相关文章
- 初始HTML_二
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta na ...
- Python基础初始之二
1.格式化的输出 当你遇到这样的需要:字符串中想让某些位置变成动态可传入的,首先考虑用格式化输出 1.格式化输出:% 2. 格式化输出:format 3. 格式化输出:f 2.运算符 3.编码 待续
- [LeetCode 109] - 将已排序链表转换为二叉搜索树 (Convert Sorted List to Binary Search Tree)
问题 给出一个元素以递增序列排序的单链表,将其转换为一棵高度平衡的二叉搜索树. 初始思路 二叉搜索树高度平衡,意味着左右子树的高度要平衡.根据二叉树左子树节点小于根节点,右子树节点大于根节点的性质:我 ...
- Go语言基础(二)
Go语言基础(二) 跟着上篇,继续看Go基础 一.变量作用域 与C类似,有全局变量.局部变量.形参之分 package main import "fmt" // 全局变量 var ...
- 深入.net(集合)
集合技术: 用于“批量数据”管理的重要技术,是数组技术的替代技术! 与数组技术的对比: 数组:只提供“存储的空间”,但缺乏各种数据管理措施! 集合:在数组的基础上,提供丰富的“属性”和“方法”,来方便 ...
- UI设计师零基础入门到精通精品视频教程【155课高清完整版】
[福吧资源网分享]课程是非常完整的,也是非常零基础的,适合任何学员,有需要的可以下载看看!课程目录:第1章 Adobe Photoshop CS6课时1 Adobe Photoshop CS6入门基础 ...
- 20160205.CCPP体系详解(0015天)
程序片段(01):01.杨辉三角.c 内容概要:杨辉三角 #include <stdio.h> #include <stdlib.h> #define N 10 //01.杨辉 ...
- Java Script基础(八) Array数组对象
一.Array数组 JavaScript中的数组也是具有相同数据类型的一个或者多个值得集合.用法和Java中的数组类似. Array对象的常用属性和方法: 属性: length:获取数组的长度: 方法 ...
- Java学习02
Java学习02 1.导入内部的包 一.在包的下面加入下面一句话: import java.util.Scanner; 二.在类中 Scanner input=new Sanner(Sy ...
- OpenCV Haar AdaBoost源代码改进(比EMCV快6倍)
这几天研究了OpenCV源代码 Haar AdaBoost算法,作了一下改进 1.去掉了全部动态分配内存的操作.对嵌入式系统有一定的速度提升 2.凝视覆盖了大量关键代码 3.降低了代码一半的体积,而且 ...
随机推荐
- debug调试命令
- Windbg程序调试系列1-Mex扩展使用总结
最近一直在频繁使用Windbg做线上Dump调试,与微软做Case交流的时候,发现微软CSS团队,用了一个非常效率的Windbg 插件,Mex: 使用介绍: https://blogs.msdn.mi ...
- javascript时间处理
1.将一般格式时间转换为时间戳: var systime = "2018年04月28日 16:01:09"; systime = systime.replace('年', &quo ...
- Linux系统命令 3
1.vmstat命令监控系统资源[root@localhost ~]#vmstat [刷新延时 刷新次数] 例如:[root@localhost proc]#vmstat 1 3 2.dmesg开机时 ...
- myeclipse集成meavn
环境准备: JDK 1.6 Maven 3.0.4 myeclipse 8.6.1 安装 Maven 之前要求先确定你的 JDK 已经安装配置完成.Maven是 Apache 下的一个项目,目前最新版 ...
- 使用hector-slam和Kinect V1建图
一.建图实际操作 下载源码测试源码,depthimage_to_laserscan,参考https://blog.csdn.net/u010925447/article/details/5649468 ...
- 系统安装后的linux和vmware的网络配置
一.1表示linux的版本 2表示linux内核的版本 3表示操作系统多少位 4.表示操作系统的名称 二.配置虚拟机网络 1.在办公室控制和使用服务器(机房) 2.远程连接 ###配置虚拟机 ...
- overture不同行的音符应该如何连线?
钢琴初学者在使用overture的时候,碰到不同行中的音符想要将其连线,肯定会疑惑如何来完成这个操作.Overture作为一款钢琴爱好者喜爱的钢琴打谱作曲软件,有着十分强大的功能,下面,我们来看看如何 ...
- 【Python游戏编程01--初步认识pygame】
一.pygame简介 Pygame 是一组用来开发游戏软件的 Python 程序模块,基于 SDL 库的基础上开发.允许你在 Python 程序中创建功能丰富的游戏和多媒体程序,Pygame 是一个高 ...
- c# 7.1 Async Main方法
安装 .net framework sdk 7.1 新建一个 .net framework 7.1 的程序 在程序的工程文件的第一个 PropertyGroup 节点下加入以下子属性 <L ...