C#入门基础三四
数组:数组是一组具有相同类型的值的集合,可以通过索引来访问数组中的元素。
声明数组的语法: A.数据类型 [] 数组名称; B.数据类型 [] 数组名称 = new 数据类型[数组大小]; C.int [] arr = {1,3,4,5,5,3,}; 通过指定位置索引:arr[0]
多维数组:多个线性数组的值 .GetLength() 一维:int [] arr = new int[2]; 二维:int [,] arr = new int[3,5]; 三维:int [,,] arr = new int[2,4,5]; 多维数组使用GetLength获取长度,维数同样是从0开始。
交错数组:“数组中数组”。() .Length 声明语法:int [][] arr = new int[2][];//arr包含两个元素 int [0] = new int[2];//第一个元素是两个整数的数组 int [1] = new int[3];//第二个元素是三个整数的数组 赋值:arr[0][0] = 100; 与多维数组相比较,交错数组具有更好的性能。
System.Array数组: 声明语法:Array arr = Array.CreateInstance(typeof(int),3);//类型为int,长度为3 typeof关键字用于数据类型。 ============================================================================== Using System.Collections 集合:使用count获取集合长度。 Hashtable集合:语法:Hashtable name = new Hashtable(); 例:Hashtable hs = new Hashtable(); //添加 hs.Add(4,"张三"); hs.Add(6,"李四"); hs.Add(7,"王五"); //hs.Remove(4);//删除 //Console.WriteLine(hs.Count);//获取集合长度 Console.WriteLine(hs["Key"]);//获取key值 Console.WriteLine(hs["Values"]);//获取values值 //foreach遍历数组Values值 foreach(object lan in hs.Values ) { Console.WriteLine(lan.ToString()); }
ArrayList集合:语法:ArrayList name = new ArrayList(); 例: ArrayList al = new ArrayList(); //添加元素 al.Add(12); al.Add("蓝天"); al.Add(3.14); al.RemoveAt(0);//移除数组列表中指定的索引位置的元素 al.Insert(0,"O(∩_∩)O哈哈~");//插入数组列表中指定的索引位置 Remove:移除元素。TrimToSize:将容量设置为ArrayList中元素的实际数目 for (int i = 0; i < al.Count;i++ ) { Console.WriteLine(al[i]);//循环输出所有元素 }
============================================================================== 数组与集合的区别:
数组 集合 使用length获取长度 使用count获取长度 固定的长度 非固定长度,可增可删(object) 区别 数据类型固定(申请什么类型就得添加什么类型的值) object类型(任意添加任何类型) 直接赋值 使用Add添加 for foreach system下 collection下 ============================================================================== hashtable与Arraylist的区别: hashtable键值映射,简单说键对应值,我们认给每值都起名字,键所谓名字,我们通过名字来寻找值,而arraylist集合,线性结构存储数据,集合存储内容都值,并且我们给每值用索引做编号,所遍历过程我们用索引;
arraylist有序,而hashtable无序;
arraylist可在特定位置添加、删除元素,而hashtable只能顺序添加。
arraylist 索引为0 hashtable object(自定义) ============================================================================== 嵌套循环:外层循环用来控制输出的行数,内层循环用来控制输出的列数。
//99乘法表 for(int i = 0;i <= 9;i++) { for (int j = 0; j < i;j++ ) { Console.WriteLine((j+1)+"*"+i+"="+(i*(j+1))+" "); } Console.WriteLine("\n"); }
冒泡排序:数组元素的排序。 (一种算法)
两层循环嵌套:外层循环 N-1 内层循环 N-1-i (N 代表数组或集合的长度)
例: //冒泡排序 int[] arrl = {3,6,2,7,9,12,4 };//申请数组 int temp;//定义全局变量 for(int i = 0;i < arrl.Length-1;i++)//控制比较的趟数,这个循环一次表示比较了一趟 { for (int w = 0; w < arrl.Length - i - 1; w++) { if(arrl[w] < arrl[w+1]) { temp = arrl[w]; arrl[w] = arrl[w+1]; arrl[w+1] = temp; } } } foreach(int wy in arrl)//遍历输出排序之后的数组 { Console.WriteLine(wy); }
==============================================================================
错误调试: try{//抛出异常 //程序代码; }catch(Exception e){//捕获并处理异常.如果有多个catch块,父类(Exception)必须在后面 //异常处理代码; Console.WriteLine(e.Message);//显示描述错误状况的文本 Console.WriteLine(e.Source);//显示导致异常发生的应用程序或对象的名称 Console.WriteLine(e.StackTrace);//提供在堆栈中所调用方法的详细信息,并首先最近调用的方法。 Console.WriteLine(e.InnerException);//提供对内部异常的访问。
} finally{//最终处理 }
黑盒测试:不管代码是什么,只要功能可以实现就是成功。 白盒测试:与黑盒相反。
C#入门基础三四的更多相关文章
- mybatis入门基础(二)----原始dao的开发和mapper代理开发
承接上一篇 mybatis入门基础(一) 看过上一篇的朋友,肯定可以看出,里面的MybatisService中存在大量的重复代码,看起来不是很清楚,但第一次那样写,是为了解mybatis的执行步骤,先 ...
- 01shell入门基础
01shell入门基础 为什么学习和使用shell编程 shell是一种脚本语言,脚本语言是相对于编译语言而言的.脚本语言不需要编译,由解释器读取程序并且执行其中的语句,而编译语言需要编译成可执行代码 ...
- Markdown入门基础
// Markdown入门基础 最近准备开始强迫自己写博文,以治疗严重的拖延症,再不治疗就“病入骨髓,司命之所属,无奈何”了啊.正所谓“工欲善其事,必先利其器”,于是乎在写博文前,博主特地研究了下博文 ...
- JavaScript入门基础
JavaScript基本语法 1.运算符 运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=).算术运 ...
- C++ STL编程轻松入门基础
C++ STL编程轻松入门基础 1 初识STL:解答一些疑问 1.1 一个最关心的问题:什么是STL 1.2 追根溯源:STL的历史 1.3 千丝万缕的联系 1.4 STL的不同实现版本 2 牛刀小试 ...
- HTML入门基础教程相关知识
HTML入门基础教程 html是什么,什么是html通俗解答: html是hypertext markup language的缩写,即超文本标记语言.html是用于创建可从一个平台移植到另一平台的超文 ...
- Linux shell入门基础(六)
六.Shell脚本编程详解 将上述五部分的内容,串联起来,增加对Shell的了解 01.shell脚本 shell: # #perl #python #php #jsp 不同的脚本执行不同的文本,执行 ...
- Linux shell入门基础(一)
Linux shell入门基础(一): 01.增加删除用户: #useradd byf userdel byf(主目录未删除) userdel -r byf 该用户的属性:usermod 用 ...
- AngularJS入门基础PPT(附下载链接)
学习了Angularjs有段时间,自己写了一个PPT,个人认为总结的非常全面,对于入门基础够了. 大致模块有:Angularjs简单介绍,Angularjs特性,hello world,Control ...
随机推荐
- PWM波控制舵机总结
文章转自:http://www.geek-workshop.com/thread-70-1-1.html 一.关于舵机: 舵机(英文叫Servo):它由直流电机.减速齿轮组.传感器和控制电路组成的一套 ...
- SQLServer数据库中创建临时表
IF object_id('tempdb..#jimmy') is not NULL BEGIN DROP TABLE #jimmy; END IF object_id('tempdb..#jimmy ...
- android shader 用法
转自 http://blog.csdn.net/abcdef314159 http://blog.csdn.net/aigestudio/article/details/41799811 Shader ...
- 对偶理论、拉格朗日对偶问题、LP线性规划对偶性质
Lagrange 对偶问题 定义其的对偶问题: Lagrange函数 考虑线性规划问题 若取集合约束D={x|x≥0},则该线性规划问题的Lagrange函数为 线性规划的对偶问题为: 对偶定理原问题 ...
- Hyper-V初涉:Hyper-V虚拟机常规操作
a. 连接到虚拟机与开机 在Hyper-V管理器中双击待启动的虚拟机或在待启动的虚拟机上右键选择"启动"即可完成连接虚拟机的操作. 若此时虚拟机正在运行则直接进入虚拟机界面,若虚拟 ...
- Python成长笔记 - 基础篇 (八)
socket编程 应用层: 表示层: 会话层: 传输层: 网络层: ip地址 数据链路层: MAC地址 物理层: 协议类型: TCP/IP协议:三次握手,四次断开 2. Socket 参数 ...
- XAF Spreadsheet property Editor
https://www.devexpress.com/Support/Center/Question/Details/T371232
- phpcms V9二次开发之联动菜单筛选 包括box字段的多选 单选 筛选教程
{php $theurl = "index.php?m=content&c=index&a=lists&catid=$catid";} {php $bran ...
- Kinect v2.0 for windows开发环境说明
官方文档里是这些: Supported Operating Systems and Architectures The following operating systems and architec ...
- IDEA 创建Maven Web项目(图文版)
前言:IDEA作为一款广泛使用的开发工具,无论是后台人员,还是前段工作者,都能在它上面发现它的魅力. IDEA提供了诸多项目模板,今天就以创建Maven Web项目作为示例,和大家一起分享: 第一步: ...