隶属:C#基础
某自定义脚本中,有以下自定义变量:public int a=1;
。在inspector面板中将该值手动改为2,随后在脚本中将该变量的初始值改为3,随后点击运行,在游戏中该值被改为4,程序停止后,a的值是多少()?
A. 1
B, 2
C. 3
D. 4
答案解析:Unity在运行过程中以Inspector窗口中的数据为第一数据
下列选项中,哪个是引用类型?
A. char
类型
B. double
类型
C. string
类型
D. int
类型
答案解析:
- C#数据类型包括 值类型 和 引用类型
- 值类型包括 枚举、结构体(数值类型、bool、char)
- 引用类型包括 类(委托、数组、字符串)、接口
在C#中,下列代码运行后,变量c的值是( )。
int a = 15,b = 10;
float c = (float)a / b;
A. 0
B. 1
C. 1.5
D. 5
答案解析:
(float)a
:将a
转换为float
类型,float(a)/b
按照浮点型除法进行计算。
现有一个名为Teacher的结构,由于封装教师的信息,现在要编写一个方法用于更新Teacher中的一个属性ServiceYears,下面()的方法声明是正确的?
A. static void UpdateYears(Teacher t)
B. static void UpdateYears(Teacher[] t)
C. static void UpdateYeats(int t)
D. static void UpdateYears(ref Teacher t)
答案解析:
ref
形参,操作的是同一个变量,会改变值。
在C#中,一下关于readonly与const用法的代码,正确的是()
A. const Person person = new Person();
B. const Person person = null;
C. class Person { public Person() { readonly string name = "张三";}}
D. public const int age;
答案解析:
const
修饰字段必须有初始值。- 初始值限制只能用
null
对引用类型(字符串除外)的常量字段进行初始化
装箱是把值类型转换到( )类型。
A. 数组
B. 引用
C. Char
D. String
答案解析:
- 装箱:将值类型包装为引用类型
- 拆箱:将引用类型拆箱为值类型
C#的数据类型有数值类型和( )类型两种
A. 结构类型
B. 关系类型
C. 调用类型
D. 引用类型
答案解析:
- 值类型:包括 简单值类型 与 复合型值类型
简单值类型:细分为 整数类型、字符类型、实数类型、布尔类型
复合值类型:简单值类型的复合,如 结构类型 与 枚举类型- 引用类型:包括 类、接口、委托、数组
类:一组具有相同数据结构与数据操作的对象集合。
接口:应用程序之间互相调用,须达成一协议,被调用的一方在协议中对自己所能提供的服务进行描述。
委托:用于封装某个方法的调用过程。
数组:用于同一数据类型的数据进行批量处理。
在C#中,下面类型中是引用类型的是()
A. DualogResult
枚举
B. System.Double
C. string
D. int
答案解析:
- 引用类型包括:类、接口、string
- 值类型包括:结构、枚举
执行以下C#程序,将输出().
public class Student {
public int age;
}
public class Program {
static void Alter(string id,Student stu) {
id = "1002";
stu.age++;
}
static void Main() {
Student stu = new Student();
string id = "1001";
stu.age = 18;
Alter(id,stu);
Console.WriteLine("id = {0},age = {1}", id, stu.age);
}
}
A. id=“1001”,age=18
B. id=“1001”,age=19
C. id=“1002”,age=18
D. id=“1002”,age=19
答案解析:
string id = "1001";
在传入Alter()
后id覆写为"1002"
,stu.age = 18;
传入Alter()
后stu.age++
为19。- 由输出结果为
id="1001",age=19
;
(多选题)以下代码中属于拆箱操作的有()
A. string name = (string)obj;
B. float score = Single.Parse(obj.ToString());
C. int age = Convert.ToInt32(obj);
D. double.salary = int.Parse(6.ToString());
答案解析:
- 装箱:将值类型包装为引用类型的过程
- 拆箱:将引用类型转换为值类型的过程
拆箱将对对象强制转换为原来的类型。拆箱的值必须和其转换的目标的变量有相同的类型。