【贪玩巴斯】Unity初学圣经Part2-C#基础——Day 01:C#基础之——命名空间、类、方法、变量的声明赋值和相关知识以及.NETC#关系讲解 2022年3月28日

C#基础之——命名空间、类、方法、变量的声明赋值和相关知识以及.NETC#关系讲解


本博文为 贪玩巴斯整理B站 达内教育—— Unity3D 2017版本 的 课堂笔记和PPT记录

欢迎关注我的微信公众号
编程之蓁 ID:bianchengzhizhen
及时分享算法、计算机科学以及游戏编程内容

微信公众号同样也能查看学习笔记喔~

本人CSDN博客主页
贪玩巴斯
欢迎互相交流学习


对应视频4-1至4-7

1.引入命名空间:

  1. 命名空间语法:

// 字面意思:正在使用 XX命名空间;
// 引入命名空间

using System;

// 如果没有写这个引入命名空间那么下面的语句就必须写成:

 System.Console.Title = "";

// 如果只使用一次的可以不用写System,为了避免下面麻烦重复写。

  1. 命名空间含义:

// 命名空间 —— 对类进行逻辑上的划分,避免重名
// 定义命名空间 —— [类的住址],这个空间就是类的存储的地址
// 一个命名空间下的类,不能够重名
// 一般来讲,命名空间都不会重复

2.引入类、方法

3.变量的声明赋值

4.综合小练习

namespace Day01
{
    // 定义类 [做工具]
    class MainClass
    {
        // 定义方法 [做功能]
        // main 程序的入口方法
        public static void Main1(string[] args)
           
        {
            // 程序从本行开始执行

            // 括号内的统称为 [语句]

            // 自上而下逐句执行
            // Ctrl A 全选
            // Ctrl K F 调整格式
            // ctrl K C 选中注释
            // ctrl K U 取消注释


            // 注释,给程序员读的
            // 代码,给计算机读的

            // 控制台.标题 = “内容”
            Console.Title = "贪玩巴斯的第一个程序"; 

            // 控制台.写一行(“hello world”)
            // 现象:在控制台中显示括号内的文本
            // 作用:将 括号内的 文本 写到 控制台中了。
            Console.WriteLine("请输入您的姓名:");



            // 控制台.读一行
            // 现象:暂停程序(按回车继续)
            // 作用:将 用户在控制台中输入的文本 读取到程序中来
            string name = Console.ReadLine();

            Console.WriteLine("您好:" + name);
            Console.ReadLine(); // 让程序在本行暂停

            // = 赋值号:将右边的结果 复制一份 给左边

            // 写代码 .cs -> 生成 -> exe(在bin文件夹中) -> 运行

            // Console 是 类 [工具]
            // WriteLine / ReadLine 是方法 [动词的功能]
            // Title 是属性 [名词的修饰]
            // 图标中,p是属性,m是方法

            // 类.方法();    调用语句[使用某个类中的功能]

            // 到本行结束




            // 2022年1月26日

            // 声明
            string gunName;
            // 赋值
            gunName = "AK47";

            // 声明 + 赋值
            int age = 18;

            //在同一范围内,变量不能重复声明
            //string gunName;

            // 变量可以重复赋值
            gunName = "MP5";

            // 变量在使用前必须赋值
            Console.WriteLine(age);

            

        }

        static void Main() {
            // 4-6

            // 调试:排除错误的能力——人人都要具备——查看程序运行时,各个变量的取值
            // 1.在可能出错的行 加断点
            // 2.按F5    启动调试
            // 3.按F11   逐语句执行
            // 4.按shift + F5 停止调试

            float num01 = 1.0f;
            float num02 = 0.9f;
            float result = num01 - num02;
            bool b1 = result == 0.1f;
            Console.WriteLine(b1);
            // 结果:false
            // IBM面试题 —— 浮点型运算会出现舍入误差
            //二进制无法精确表示1/10, 就像十进制无法精确表示1/3, 所以二进制表示十进制会有一些舍入误差,对于精度要求较高的场合会导致代码的缺陷,可以使用decimal代替

            // 改进版

            //decimal num01 = 1.0m;
            //decimal num02 = 0.9m;
            //decimal result = num01 - num02;
            //bool b1 = result == 0.1m;
            //Console.WriteLine(b1);
            // 结果:true

            // 命名必须用英文,用软件查

            // 练习:
            // 在控制台中,录入枪的信息
            // 请输入枪的名称:
            // 请输入弹夹的容量
            // 请输入当前弹夹内子弹数量:
            // 请输入剩余子弹数量:

            // 在一行显示:
            // 枪的名称是: xxx,弹夹容量:xxx,弹夹子弹数:xx,剩余子弹数:xx

            Console.WriteLine("请输入枪的名称:");
            string gunName = Console.ReadLine();

            Console.WriteLine("请输入弹夹的容量:");
            string ammoCapacity = Console.ReadLine();

            // 变量名不怕长,但是怕没有意义
            Console.WriteLine("请输入当前弹夹内子弹数量:");
            string currentAmmoBullets = Console.ReadLine();

            Console.WriteLine("请输入剩余子弹的数量:");
            string remainBullets = Console.ReadLine();

            Console.WriteLine("枪的名称是:" + gunName + ", 弹夹容量:" + ammoCapacity + ", 弹夹子弹数:" + currentAmmoBullets + ", 剩余弹夹子弹的数量:" + remainBullets);
            Console.ReadLine(); // 让程序暂停


        }
    }
}

5. .NET的介绍与C#

  • .net dotnet

  • Microsoft 新一代多语言的开发平台 用于构建和运行应用程序。

  • C# csharp

  • Csharp 是 Microsoft 专为.NET这个开发平台,推出的高级编程语言。

  • 从语言技术、风格、严谨性等特点上来说,C#可成为诸多编程语言中最为优秀的一款,甚至由它而引发出计算机语言界中的多种新规范和新特征。

  • 版本
    2002年2月13日发布1.0版本
    2003年4月24日发布1.1版本
    2005年11月7日发布2.0版本
    2006年11月6日发布3.0版本
    2007年11月19日发布3.5版本
    2010年4月12日发布4.0版本
    2011年9月20日发布4.5版本

  • mono

  • Novell公司支持在其他操作系统下开发.net 程序的框架。

  • Unity借助mono实现跨平台,核心是.net Framework 框架。底层仍然是C++。

  • 最早Microsoft推出.net 同时专门为他设计了C#。所有软件只能运行在.net的Microsoft中,而因此生成了Mono,来实现在别的操作系统上运用.net。

  • 这个关系可能出现在笔试题中。

  • Visual studio 首先创建一个解决方案 参考视频4-1 16分钟

  • 在解决方案中右键创建 新建项目

  • 位置和解决方案默认放在一起

  • program.cs 为代码文件

6.变量

变量

  • 思考

  • 程序运行在哪里? —— 内存

  • 程序处理的是什么? —— 数据

  • 内存中开辟的一块用于存储数据的空间 —— 变量!

  • 内置数据类型

  • 放数据的容器

  • 容量的单位:
    位bit(比特):电脑记忆体中的最小单位,每一位可以代表0或者1的。
    字节Byte:电脑中存储的最小单位。
    1Byte=8bit
    1KB=1024Byte
    1MB=1024KB
    1G=1024MB
    网速10M指的是Mbps(兆位/秒)是速率单位,换算成字节应该是 10/8 = 1.25兆字节/秒

  • 整型(整数)

  • 1个字节:有符号sbyte(-128127),无符号byte(0255) 8位数,有符号的只有7个位来表示数字

  • 2个字节:有符号short(-3276832767),与无符号ushort(065535)

  • 4字节:有符号int,无符号uint 选int,因为够用,不需要考虑其他方面的影响

  • 8字节:有符号long,无符号ulong 8字节的已经足够了

  • 非整型(小数
    4字节:单精度浮点类型float,精度7位。 1.2f——位置坐标都是float类型
    8字节:双精度浮点类型double,精度15-16位. 1.2d
    16字节:128位数据类型decimal,精度28-29位,适用于财务和货币计算。 1.2m

  • 注意事项:
    1.非整形变量赋值要加上后缀,如果不加默认为double。
    2.浮点型运算会出现舍入误差:
    bool number = 1.0f -0.9f == 0.1f;
    进制无法精确表示1/10,就像十进制无法精确表示1/3,
    所以二进制表示十进制会有一些舍入误差,对于精度要求较高的场合会导致代码的缺陷,可以使用decimal代替。

  • 非数值型——英文字符,中文,数字和符号 数据前后必须加单引号
    char 字符,2字节,存储单个字符,使用单引号。
    string 宇符串,存储文本,使用双引号.
    bool 类型,1字节,可以直接赋值true真false假,或者赋表达式做判断。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贪玩巴斯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值