减少代码的重复书写C#游戏开发快速入门大学霸
减少代码的重复书写C#游戏开发快速入门大学霸
4.6 减少代码的重复书写减少代码的重复书写C#游戏开发快速入门大学霸
脚本中的方法,对于游戏对象而言,意义在于它可以控制游戏对象的行为逻辑,这是方法对于游戏效果的意义。方法对于脚本代码的书写,同样具有意义,那就是它可以帮助减少代码的重复书写。
本章在介绍方法时,曾将方法与变量做了简单比较,对比的过程中说过,方法也可以看做是一个存储单元,只不过里面存储的不是数据,而是一条或者多条语句。就这个意义而言,可以认为如果在方法中放入多条会在脚本中被重复使用的语句,并使用方法名作为这些语句的指代。那么,脚本中所有需要书写这多行代码的地方,都可以使用方法名(即方法的调用)来代替。例如,脚本中有下面的代码减少代码的重复书写C#游戏开发快速入门大学霸:
01 using UnityEngine;
02 using System.Collections;
03
04 public class MyScript : MonoBehaviour
05 {
06 private int number1;
07 private int number2;
08 private int number3;
09 private int number;
10 void Start()
11 {
12 number1 = 3;
13 number2 = 5;
14 number3 = 4;
15 number1 *= number1;
16 number2 *= number2;
17 number = number1 + number2;
18 Debug.Log(“number1*number1 + number2*number2 = ” + number);
19
20 number1 = 3;
21 number2 = 5;
22 number3 = 4;
23 number1 *= number1;
24 number3 *= number3;
25 number = number1 + number3;
26 Debug.Log(“number1*number1 + number3*number3 = ” + number);
27 }
28 }
减少代码的重复书写C#游戏开发快速入门大学霸脚本中有3个变量:number1、number2和number3。为了计算number1与number2的平方和,代码中使用了12~18行,一共7行的代码。同样的,为了计算number1与number3的平方和,代码中使用了20~26行,一共7行的代码。如果在脚本中定义方法的话,就不用书写这么多类似的代码了,使用定义了方法的脚本以后,脚本中的代码如下:
01 using UnityEngine;
02 using System.Collections;
03
04 public class MyScript : MonoBehaviour
05 {
06 private int number1;
07 private int number2;
08 private int number3;
09 private int number;
10 void Start()
11 {
12 number1 = 3;
13 number2 = 5;
14 number3 = 4;
15 Debug.Log(“number1*number1 + number2*number2 = ” + AddTwoNumber(number1,number2));
16 Debug.Log(“number1*number1 + number3*number3 = ” + AddTwoNumber(number1,number3));
17 }
18 int AddTwoNumber(int i1,int i2)
19 {
20 i1 *= i1;
21 i2 *= i2;
22 return i1 + i2;
23 }
24 }
相比于之前使用的14行代码,这里只使用了5行代码!但是两个脚本实现的效果是一样的,如图4-11所示。
图4-11 Console视图输出了两个数平方和的计算结果
Comments are closed.