39708人加入学习
(83人评价)
Unity中的C#编程 - 零基础(Unity 2017)

完成于2017-11-06

价格 免费

查找组件的时候注意性能

[展开全文]
HelloApple · 2019-02-21 · 该任务已被删除 0

可以自己定义命名空间

[展开全文]
HelloApple · 2019-02-21 · 该任务已被删除 0
  • 获取游戏物体的四种方式
  1. public GameObject +命名;
  2. transform(要找的组件).Find("物体的所在的路径/GameObject");——节约性能推荐
  3. GameObject +命名= GameObject.Find("物体名字");——如果物体有多个则返回第一个,在物体多的时候耗费性能
  4. GameObject+命名= GameObject.FindWithTag("标签");——通过标签查找节约性能

 

                                               2019/2/19学习完

 

 

C#初级编辑教程的笔记

  • 接收用户输入的字符串 string str1 = Console.ReadLine();
  • 输出到屏幕   Console.WriteLine();
  • 三元运算符  布尔? true: false;  

例如 int b = 50  string a = b<40?"是的":“不是”,因为b>40所以输出的是“是的”

 whlie循环——死循环

  • whlie(判断){循环体};

do 循环

  • do{循环体}whlie(判断);

for循环,确定范围建议使用

  • for(给一个初始值;判断 ;执行 ){循环体}

break终止循环

  • 使用break立即体哦啊出循环

continue循环中断

  • 只会终止当此循环,继续下一个循环

return,用来终止方法,表示方法运行结束,剩余的代码不执行

结构体——式结构更加清晰

  • 先定义struct<命名>{定义1,定义2,定义3,.。。}
  • 在引用<命名>+xx;   xx.命名1/2/3.。。=,(枚举和结构体的区别,枚举可以表示可取的范围有几个,结构体是类型的结合体)

数组

  1. 数组声明的第二种方法
  • int[]  数组名 = new int [n];构建一个数组 长度为n
  1. 2第三种方式
  • int[] 数组名 = new int[n]{n}//定好了长度和数值
int[] hps = {100,90,80,70,60};
print([1]);//输出90,通过索引来访问数据,数组的第一个索引为0,第二个1,以此类推。

数组的遍历——取出数组的每一个值来做操作

  • 第一种方式for循环
 int[] scores = { 23, 2, 32, 3, 34, 35, 45, 43, 543 };
            //scores.Length得到数组的长度
            for (int i = 0; i < scores.Length; i++)
            {
                Console.WriteLine(scores[i]);
            }
  • 第二种方式while
  int i = 0;
            while (i<scores.Length)
            {
                Console.WriteLine(scores[i]);
               i++;
            }
  • 第三种foreach
foreach (int temp in scores )//foreach会依次取到数组中的值,然后赋值给temp,然后执行循环体
            {
                Console.WriteLine(temp);
            }
            Console.ReadKey();

150 字符串处理

  • 第一种
string res = str.ToLower();//把字符串转化成小写 并返回,对原字符串没有影响
string res = str.ToUpper();//把字符串转化成大写 并返回,对原字符串没有影响
  • 第二种
/string res = str.Trim();//去掉字符串前面和后面的空格,对原字符串没有影响
  • 第三中
string[] strArray=str.Split('.');//把原字符串按照指定的字符进行拆分 ,得到一个拆分后的字符串数组

函数的定义和使用 158(方法)

  static int Plus(int num1,int num2)//函数定义的时候,参数我们叫做形式参数(形参),num1跟num2在这里就是形参,形参的值是不确定的
        {
            int sum = num1 + num2;
            return sum;
        }
        static void Main(string[] args) {
            Write();//函数的调用   函数名加上括号 ,括号内写参数
            int num1 = 45;
            int num2 = 90;
            int res1 = Plus(num1, num2);//当调用函数的时候,这里传递的参数就是实际参数(实参),实参的值会传递给形参做运算
            int res2 = Plus(45, 20);//这里定义了res1和res2来接受方法的返回值
            Console.WriteLine(res1);
            Console.WriteLine(res2);
            Console.ReadKey();

参数数组

static int Plus(params int[] array)

参数数组,和 数组参数,的不同,在于函数的调用,调用参数数组的函数的时候,我们可以传递过来任意多个参数,然后编译器会帮我们自动组拼成一个数组,参数如果是上面的数组参数,那么这个数组我们自己去手动创建

 

Math.Sqrt()

  • 求的平方根

构造函数

  • 构造函数就是用于初始化数据的函数。
  • new关键字创建类的时候,就会调用构造方法

属性的定义

  • 结构
public int MyIntProp{
		get{
			// get code
		}
		set{
			//set code
		}
	}

1,定义属性需要名字和类型

2,属性包含两个块 get块和set块

3,访问属性和访问字段一样,当取得属性的值的时候,就会调用属性中的get块,所以get块,类型需要一个返回值就是属性的类型;当我们去给属性设置值的时候,就会调用属性中的set块,我们可以在set块中通过value访问到我们设置的值。

private

  • 设置为私有,未接不能访问

public

  • 外界可以访问

堆和栈 : 程序运行时的内存区域

  • 我们把内存分为堆空间和栈空间 栈空间比较小,但是读取速度快 堆空间比较大,但是读取速度慢
  • 栈的特征为先入后出
  • 堆的特征是任意的进入和移除

值类型和引用类型

  • 类型被分为两种:值类型(整数,bool struct char 小数)和引用类型(string 数组 自定义的类,内置的类)。
  • 值类型存储与栈当中
  • 引用存储与栈当中,引用的数据存储与堆当中

this和base关键字的使用

  • 通过this关键字访问方法,字段,属性
  • base可以调用父类的公共方法,字段,
  • 又没有this,base关键字都可以访问,用了关键字会给出提示

密封类和密封方法

  • 密封类不能被传承
  • 密封方法要在重写方法里使用

virtual 虚函数

abstract 抽象类

override 重写

scaled 密封方法

protected 保护的,在没有继承的时候,他的作用和privat的作用一样,当有继承的时候表示可以被子类访问

static 表示静态的

定义和实现接口

  • 定义接口
public interface IFlyHandler{
		public void Fly();
	}
  • 实现接口
public class Type1Enemy:IFlyHandler{
	}

列表List

  • 创建列表
List<int> scoreList = new List<int>();
			new List<int>(){1,2,3}
			new List<string>(){"one","two"}
	var scoreList = new List<int>();
  • 插入数值
scoreList.Add(12);
scoreList.Add(45);
  • 调用
  • scoreList[0] 同过索引来调用

列表的遍历(遍历酒是取得所有的元素)

  • 第一种for循环
for(int i=0;i<list.Count;i++){
			//循环体list[i]
  • 第二种foreach
foreach(int temp in list){ //依次取得list中的每一个元素赋值给temp,并执行循环体
			//循环体 temp

操控列表的属性和方法

1,Capacity获取容量大小

2,Add()方法添加元素

3,Insert()方法插入元素

4,[index]访问元素

5,Count属性访问元素个数

6,RemoveAt()方法移除指定位置的元素 7,IndexOf()方法取得一个元素所在列表中的索引位置    LastIndexOf()上面的方法是从前往后搜索,这个是从后往前搜索,搜索到满足条件的就停止     上面的两个方法,如果没有找到指定元素就返回-1

8,Sort()对列表中是元素进行从小到大排序

 

泛型

  • 定义一个泛型类就是指的是,定义一个类,这个类中某些字段的类型是不确定的,这些类型可以在类构造的时候确定下来

创建

class ClassA<T>{
	private T a;
	private T b;
	public ClassA(T a,T b){
		this.a = a ;this.b = b;
	}
	public T GetSum(){
		return a+“”+b;
	}
}

 

泛类型方法(定义泛型方法就是定义一个方法,这个方法的参数的类型可以是不确定的,当调用这个方法的时候再去确定方法的参数的类型。)

 

 

 

[展开全文]
酒以慰风尘 · 2019-02-25 · 该任务已被删除 0
  • enabled = false/true;  物体的禁用/启用
[展开全文]
酒以慰风尘 · 2019-02-19 · 该任务已被删除 0
  • GetComponent   组件获取,例如

          GetComponent<Transforn>();

[展开全文]
酒以慰风尘 · 2019-02-19 · 该任务已被删除 0
  • switchi,只能判断单个值
  • if,可以做范围判断,和单个值
[展开全文]
酒以慰风尘 · 2019-02-19 · 该任务已被删除 0
  • 枚举类型

在using下面写出枚举类型例如 

enum HeroType{Soldier,Master,Assassin};

在然后在声明HeroTapy herotype = HeroType.Sodier;//可以通过Herotype.来引用里面的Soldier

[展开全文]
酒以慰风尘 · 2019-02-21 · 该任务已被删除 0
  • 数学运算符

+  -  *  /  %

  • 赋值运算符

=  +=  -=   *=  /=  %=

  • 比较运算符

> >=  <  <=  ==  !=

  • 逻辑运算符

&& //逻辑与,两个满足条件输出ture,否则false例如print(true && true);输出true

               print(true && false);输出false

               print(false && true);输出false

               print(false && false);输出false

||  // 逻辑或,满足一个条件输出true,例如

               print(true || true);输出true

               print(true || false);输出true

               print(false || true);输出true

               print(false || false);输出false

! //取反,一般用于if条件判断,例如角色是否死亡

[展开全文]
酒以慰风尘 · 2019-02-19 · 该任务已被删除 0

数组名.Length可以动态的知道数组的长度

[展开全文]
酒以慰风尘 · 2019-02-18 · 该任务已被删除 0
  • for 循环

for(int i = 1; i<=10; i++){print(“创建“)//循环体} ————最后在显示台打印10次创建

 

[展开全文]
酒以慰风尘 · 2019-02-18 · 该任务已被删除 0
  1. 数组声明的第二种方法
  • int[]  数组名 = new int [n];构建一个数组 长度为n
  1. 2第三种方式
  • int[] 数组名 = new int[n]{n}//定好了长度和数值

 

[展开全文]
酒以慰风尘 · 2019-02-18 · 该任务已被删除 0
  • 数组 类型[] 数组名 = {数组值}
  • int[] hps = {100,90,80,70,60};
    print([1]);//输出90,通过索引来访问数据,数组的第一个索引为0,第二个1,以此类推。

     

[展开全文]
酒以慰风尘 · 2019-02-18 · 该任务已被删除 0
  • 布尔类型 boll  只有true 和false
  • 字符类型 char  string
  • 整型 int
  • 浮点型 float

 

[展开全文]
酒以慰风尘 · 2019-02-18 · 该任务已被删除 0
[展开全文]
with · 2019-02-16 · 该任务已被删除 0

枚举类型关键字

enum RoleType{

 

 

 

}

 

[展开全文]
明明是胖了还不承认 · 2019-02-04 · 该任务已被删除 0

hps.Length

可以动态访问数组的长度

[展开全文]
明明是胖了还不承认 · 2019-02-04 · 该任务已被删除 0

索引是从0开始的

索引要必须存在

[展开全文]
明明是胖了还不承认 · 2019-02-04 · 该任务已被删除 0

 float       =2f;

 

[展开全文]
明明是胖了还不承认 · 2019-02-04 · 该任务已被删除 0

i n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g ceni n gui r p e f g cenin gui r pe f g cen

[展开全文]
林秀珍 · 2019-02-02 · 该任务已被删除 0

c#

[展开全文]
一羞 · 2019-02-01 · 该任务已被删除 0

授课教师

SiKi学院老师

课程特色

下载资料(2)
视频(37)