美文网首页C#语言入门
游戏之路语言篇之数据类型--001

游戏之路语言篇之数据类型--001

作者: HeavenOrSky | 来源:发表于2019-03-27 14:52 被阅读0次

    老酷:小奇,你在干什么?

    小奇:我自从看了粒子特效后,晚上想了想,我要开始我的游戏之路。我想让更多人玩我的游戏。所以我现在就开始学习C#呀。

    老酷:年轻人,有想法。

    小奇:但是刚开始学习,以后有问题,我就麻烦你了。

    老酷:我就喜欢上进的人。No Problem!

    小奇:我刚刚学会了一条代码.在黑窗口上显示了”Hello World”!

    老酷:我看一下你的代码!!嗯!还是挺整齐的。你能给我说一下三对大括号的作用么。

    小奇:这个!我现在只知道代码在最里面那对大括号里面写!其他的还真不知道。你为难人(委屈)。

    老酷:我来给你说一下 最外面那一层是属于namespace命名空间的,中间那一层属于class类的,最里面那一层属于方法的。命名空间是用来在逻辑上区分类,比如相同的类不能放在同一个命名空间下,但是我们可以在两个不同的命名空间下各放一个具有相同名字的类。class是对一类事物抽象的模板,里面具有该类事物的公有的特征。而方法则是一个具有特定功能的代码块。在这里你只需要做了解。现阶段我们写的代码都放在Main方法中就行了。

    小奇:听着很高大上的感觉。不过这样写代码,我也只能隐隐越越感觉这样具有层次感。我现在我要记很多单词么。现在这一条命令还好,以后多了,我恐怕记不住。有什么窍门叫我一下。

    老酷:其实不用太注重记忆。我们理解去做就好了。

    就比如你Main方法中的代码

    Console.WriteLine("Hello World!");
    

    Console就是控制台的含义。也就是你上面给我说的黑窗口。Write就是写的意思。Line是行的意思。整条命令就是在控制台上写一行”Hello World!”.

    小奇:原来如此。确实比刚才好多了。但是”Hello World”为什么要加双引号,而我之前在打印数字的时候就不需要加双引号?比如:

    Console.WriteLine(5);
    

    老酷:你这个问题,问得很有水平,这也是初学者最容易有疑惑的地方。解决这个问题需要引入常量和变量概念。常量,就是不变的量。对于数字来说,5是一个确定的值。直接使用以上命令在控制台上输出没有任何问题。对于文字来,在程序中容易和变量搞混,我们就用双引号来将文字引起来。这样才能在控制台上完整输出。那么变量是什么呢?变量是和常量相对的量,也就是在程序运行中可以改变的量。对于常量来说我们无法改变他的值。

    小奇:有点不明白。5+1=6不就改变了值了么?

    老酷:就知道你会这么想。你说的并不是改变5的值,而是产生了一个新的值6.如果上述改变了5的值,那5岂不是变量了?

    小奇:貌似有点道理,那常量到底是什么?

    老酷:就拿你刚才说的例子,我们在操作上面的是运算式的时候通常把常量5放到一个容器里面。然后在对常量5和常量1相加的之后再把运算的结果放到这个容器里面。这样整个过程容器中的常量5经过运算变成了常量6.我们通常把这个容器称之为变量,即在代码执行中可以改变的量。

    小奇:有点似懂非懂的感觉。(懵懵的)

    老酷:看个例子,

    static void Main(string[] args)
    
    {
    
          int num = 5;
    
          Console.WriteLine(num);
    
          num = num + 1;
    
          Console.WriteLine(num);
    
    }
    

    运行结果:

    num 的值是不是发生了改变?

    小奇:恩,还真是,我明白了。那么那个int是什么意思呢?

    老酷:你可以理解为容器的尺寸。你的桌子上放的一个杯子,为什么不是桶呢?

    小奇:我两周也喝不了一桶水,我为什么要用那么大的桶呢?不对,现在在说代码,你别闹行不?

    老酷:在计算机中,不同的数据类型有不同的取值范围。不同数据类型的变量占用不同的内存空间。尽量不去浪费我们的内存空间。

    小奇:恩,原来如此。那还有什么数据类型呀?

    老酷:数据类型大致可分为值类型和应用类型,值类型又可分为整型、浮点型、布尔类型、字符类型,结构、枚举,引用类型可分为字符串,类,委托,接口,数组。我们可以简单看一下这几幅图。


    值类型

    小奇:类型还是挺多的,我是不是就可以把他们当成不同的容器类型就行了。在使用的时候选择合适类型的容器,就像大量存储水的时候用大的容器,少量用水的时候使用小容器是一样的。

    老酷:确实如此。我们简单的举例。

            static void Main(string[] args)
            {
                //用户名
                string username = "程咬金";
                //密码
                string password = "wobuzhidao";
                //等级
                int level = 13;
                //血量
                int hp = 3000;
                //性别
                char gender = '男';
                //是否战斗
                bool isfFighting = true;
    
            }
    

    小奇:老酷,你这变量很清晰,我基本上看到你的变量就知道后面的数值表示什么意思。

    老酷:恩,这也是你要学习的一个重要的内容--标识符。标识符是由数字,字母,下划线组成的但是不能使用数字开头。比如_hp,hp,h_p,hp123,这些都是合法的,但是12_hp就是不合法的。

    小奇:还有什么规则吗?我感觉不止这些。

    老酷:对于变量来说,我们通常使用小驼峰命名法--变量第一个单词字母要小写,以后的每一个单词要大写。但是对于命名空间、类和方法来说,要用大驼峰命名法,也就是所有单词的首字母要大写。

    小奇:就像Day01,Program和Main这三个单词一样么?

    老酷:恩,是的。但是我们在使用变量的时候,我们要尽可能做到见名知义。也就是你刚才说的看见一个变量就知道表示的是什么意思。因为代码不仅仅是给自己看的。

    小奇:老酷。今天学到很多,你先让我消化一下。

    老酷:好吧,今天先到这里。期待你快速成长。

    相关文章

      网友评论

        本文标题:游戏之路语言篇之数据类型--001

        本文链接:https://www.haomeiwen.com/subject/atuzvqtx.html