Unity3D的近期学习与总结——C#语言(3)
一、语句
1.选择语句
(1). if语句
if语句能够根据条件表达式的值选择要执行的语句,它存在以下两种语法形式
① if (条件表达式)嵌入语句1; ② if (条件表达式)嵌入语句;
else 嵌入语句2;
一般的表现形式为:
① if(表达式 == 常数值1)
{
}
{
}
else if(表达式==常数值2)
{
}
② if(表达式 == 常数值1)
(2). switch case语句: 语句
它的语法如下:
while (条件表达式)
{
嵌入语句:
嵌入语句:
}
while语句能够按照不同条件执行一个嵌入语句0次或多次。
switch(表达式)
{
case 常数值1://若干行语句break;
case 常数值2//若干行语句break;
}
注意事项
2.循环语句
(1). for 语句
for语句首先计算-一个初始化表达式序列,然后,当某个条件为真时,重复执行相关的嵌入语句并计算一个迭代表达式序列。for 语句的语法如下:
for (初始化表达式;条件表达式: 迭代表达式)嵌入语句;
for循环
(2).while语句
while语句能够按照不同条件执行一个嵌入语句0次或多次。它的语法如下:
while (条件表达式)嵌入语句:
{
}
(3).do while语句
do while语句
do语句它能够按照不同条件执行一个嵌入语句一次或多次。
它的语法形式如下:
do 嵌入语句 while (条件表达式) ;
3.跳转语句
·用于将控制转移给另一段代码。
·包括:continue语句、break语句、return语句。
(1). continue语句
(1).break 语句
二、方法
1.定义
2.语法
方法是类里面的一个概念,是对一系列语句的命名,表示一个功能或行为。visual studio控制台会自动调用Main()方法,除此之外的任何方法想要被使用都需要主动调用,即在Main()中调用方法名。
3.返回值类型
注:
1.返回的数据必须与返回值类型兼容(可以隐式转换)
2.return + 返回值 ,可以用其他语句接收这个返回值
return;
3. 没有返回值的方法,也可以写return关键字,直接跟分号,表示退出方法。
4.参数
注:
1.如何使用其他的方法
**2.**使用方法是要注意每个方法要实现一个特定的功能,尽量避免多个功能混杂;
**3.**一个方法的正常用法
**5.**方法重载
在方法重载前:
解决一个问题需要多个方法,记忆大量近似的方法,仅为了解决相似的问题,大大的浪费了记忆空间。
方法重载后:
定义:
三、递归与数组
1.递归
递归的定义:方法内部又调用自身的过程。
核心思想:递归就是自己调用自己,将问题转移给范围小的子问题;
实用性:在解决问题的过程中,又遇到了相同的问题了;
优点:能够将特别复杂的问题简单化。
缺点:性能较差。
注意:堆栈溢出;
2.数组
1.什么是数组
2.数组的定义
数组是一个有序的数据集合,通过数组统一访问或操作这些元素。数组中的每一个元素的数据类型都相同。
元素的数据类型被称为元素类型,它可以为任何类型,甚至可以为数组。在内存中,数组占用一块连续的内存,元素按顺序存放在一起,数组中每一个单独的元素并没有自己的名字,但是可以通过其位置来进行访问或修改。
2.数组初始化
方法:
1.直接赋值
2.初始化 + 赋值
是指给数组的每个元素赋值,而且指定数组长度。如果赋值的个数超过了数组长度,那么编译器就会报错。
如将一组值“{“a” ,“b”,“c” “d”,“e”}"赋给s2数组。该初始化
操作使用new操作符,并指定了数组的长度为5。该数组初始化之后,它的元素的值分别
为a、b、c、d 、e。
3.声明+初始化+赋值
3.访问数组元素
1.通过索引访问
2.for遍历
特点:灵活可变通
3.foreach遍历
特点:从头到尾;
优点:方便,使用简单;
5.数组常用方法及属性
var:推断类型:根据所赋数据,推断出类型
适用性 :数据类型名称较长
弊端:代码可读性减弱;
常用方法
双层嵌套循环
1.for for
原代码:
效果:
for for代码:
效果:
2冒泡排序算法
实现代码:
存在弊端:每轮交换次数可能过多;
改进:
选择排序:仅在每轮比较完成后进行比较
6.数组的分类
1.|/数组分类: - -维数组 多(二)维数组 交错数组
[行,列]
foreach:
forfor的嵌套式:
2048核心思想
需求分析:
**功能一:
上移**
1-获取列数据,形成一维数组
2 -合并数据
3-去零:将0元素移到末尾
4-相邻相同,则合并(将后一个元素累加到前一个元素上,后一个元素
5 -去零:将0元素移到末尾
6 -将一-维数组元素还原至原列
下移:
改进后
优势:反向获取数据,使得两个功能能够共用一个功能。
编码(实现过程):
**交错数组**
一个交错数组的内部空间分布:
注意:
虽然交错数组的表现和二维数组一样,但是,交错数据的【A】【B】中【A】指的是数组的第几行,【B】指的是该行的第几个元素。
交错数组的foreach使用注意:
注:第一次是一个数组包含多个元素的行,第二次则是访问每行的元素
for语句的使用
注:交错数组每行仅有一位元素,一个元素就是一个一维数组,因此元素数,即使交错数组的行数。
参数数组
定义:对于方法内部而言:就是个普通数组
对于方法外部(调用者)而言:
使用的方式:可以传递数组
传递一组数据类型相同的变量集合
可以不传递参数
作用:简化调用者调用方法的代码
实际就相当于给予方法转递来的元素建立一个新的函数