我是一名Unity3D培训讲师,这一专栏是C#基础教程,都是我每天给学生讲课的笔记,每一个步骤都写下来了,我的学生都是纯新手,所以几乎是手把手教的,有需要的新手同学可以收了哦。
目录
第一天 第一个程序、变量的使用
第二天 变量的类型、变量的输入和输出、算数运算符
第三天 bool、if语句、else-if语句
第四天 while循环
第五天 for循环 (单重循环与双重循环)
第六天 一维数组
第七天 函数、类、单元测试-判断本年第几天
第八天 逻辑代码实战(六个案例)
第九天 封装、继承、多态
第十天 面向对象以及面向对象题目练习
第十一天 抽象类和抽象方法
第十二天 常量、异常处理
第十三天 接口、集合、类库
变量的类型
一、整型(int short long)
存放整数
二、float类型
1、可以存放小数
2、生活中常见的小数,精度不高,7位有效数字。
3、加后缀f或F,后缀不能省略。
4、举例:float floatNum = 0.123f;
三、double类型
1、可以存放小数
2、数学或物理等科学方面的小数,精度比float高,精度为15位有效数字,存储空间大。
3、加后缀d或D,后缀可以省略。
4、举例:double doubleNum = 3.1415926535d;
5、任务:请测试出float类型和double类型的有效数字位数。
四、string类型(字符串类型)
1、"“双引号括起来的多个字符,也可以是0个字符,0个字符的”"称为空字符串
2、举例:
string stringData1 = null;//没有开辟空间,没有值
string stringData2 = "";//开辟了空间,存储的值为空
五、char类型(字符类型)
1、’‘单引号括起来,只能存放一个字符,而且必须存放一个字符
2、举例:char charData = ‘男’;
3、char类型可以进行加减运算。
‘a’+1 是字符’b’ , ‘z - 1’ 是字符’y’
char charData = 'A';
Console.WriteLine((char)(charData + 3));//打印
D
六、类型转换
强制转换:精度高的值赋给精度低的变量,会丢失数据,需要强制转换(显式转换)
自动转换:精度低的值赋给精度高的变量,不会丢失数据,自动转换(隐式转换)
1、隐式转换:char -> int -> float -> double
2、显式转换:double -> float -> int -> char
七、字符串类型与其他类型相互转换
1、字符串类型 -> 其他类型
int num1 = int.Parse(str);//string -> int
float num2 = float.Parse(str);//string -> float
2、其他类型 -> 字符串类型
int num3 = 123;
string str1 = num3.ToString();//int -> string
变量的输入和输出
一、变量的输出
1、字符串的输出
Console.WriteLine("哈哈哈");
string str = "哈哈哈";
Console.WriteLine(str);
2、其他类型的变量的输出
int num = 123;
Console.WriteLine(num);
3、字符串和其他变量一起输出,+号用于连接
string name = "激光豆";
Console.WriteLine("植物的名称是:" + name);
// "植物的名称是:" + name
//-> "植物的名称是:" + "激光豆"
//-> "植物的名称是:激光豆"
4、+的作用:加法运算 和 连接(从左到右)
①连接作用:+号左右任意一边是字符串
②加法运算作用:+号左右都是数值
Console.WriteLine(1 + 2 + "相加的结果是" + 1 + 2);
//1 + 2 + "相加的结果是" + 1 + 2
//3 + "相加的结果是" + 1 + 2
//"3相加的结果是" + 1 + 2
//"3相加的结果是1" + 2
//"3相加的结果是12"
Console.WriteLine("" + 1+2 + "相加的结果是" + (1+2));
5、占位符
string name = "张三";
int age = 20;
char sex = '男';
string home = "北京";
string hobby = "打篮球";
Console.WriteLine(name + "的年龄是:" + age + ",性别是:" + sex + ",家乡是:" + home + ",爱好是:" + hobby);
占位符改进:
Console.WriteLine("{0}的年龄是:{1},性别是:{2},家乡是:{3},爱好是:{4}",name,age ,sex ,home ,hobby);
二、变量的输入
1、输入一个字符串
Console.WriteLine("请您输入昵称");
string userInput = null;
userInput = Console.ReadLine();
Console.WriteLine("用户输入的名称是:" + userInput);
编程规范:每次请求用户输入时,均应给出提示,包括对用户的限制。
算数运算符
一、算术运算符(+ - * / %)
%:取余数
Console.WriteLine(5.5f % 3);//控制台显示2.5
1、+的优先级高于=
int num = 5 + 3;
计算过程:先计算=右边,把5和3相加起来
再把相加的结果赋值给num
2、/运算符两边都是整型,是取商运算,结果是整数。
/运算符任意一边是小数,是小数除法运算,结果是小数。
Console.WriteLine(5 / 2);//2
Console.WriteLine(5.0f / 2);//2.5
二、自增、自减(++、–)
int num = 10;
num++;//num = num + 1;
Console.WriteLine(num);//控制台显示11
int num = 10;
num--;//num = num - 1;
Console.WriteLine(num);//控制台显示9
编程规范:
一般情况下,++和–不要用于其他语句中,应单独作为一条语句
Console.WriteLine(num++);//不规范
三、赋值运算符(= 、+= 、 -= 、 *= 、/= 、 %=)
int num = 10;
num += 5;//相当于num = num + 5,控制台显示15
int num = 10;
num -= 5;//相当于num = num - 5,控制台显示5
int num = 10;
num *= 5;//相当于num = num * 5,控制台显示50
int num = 10;
num /= 5;//相当于num = num / 5,控制台显示2
int num = 10;
num %= 5;//相当于num = num % 5,控制台显示0
四、算术运算符的优先级
1、默认的优先级:乘除 > 加减 > 赋值
- 、 / 、 % 高于 + 、- 高于 = 、+= 、-= 、 *= 、/= 、 %=
int numOne = 5;
int numTow = 2;
float res = numOne + 3 * numTow;
// res = numOne + 6
// res = 11
Console.WriteLine(res);//控制台显示11
2、优先级同级时:加减、乘除都是从左往右,赋值运算从右往左
int numOne = 5;
int numTow = 2;
float res = numOne + 3 - numTow;
// res = 8 - numTow;
// res = 6
Console.WriteLine(res);//控制台显示6
int numOne = 5;
int numTow = 2;
float res = numOne = numTow;
// res = numOne = 2
// res = 2
Console.WriteLine(res);//控制台显示2
3、可以使用小括号()改变优先级
int numOne = 5;
int numTow = 2;
float res = (numOne + 3) * numTow;
// res = 8 * numTow
// res = 16
Console.WriteLine(res);//控制台显示16