欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

C#学习日记03---数据类型

程序员文章站 2022-05-05 09:53:24
...
C#数据类型

C#语言是一种强类型的语言,在程序中用到的变量、表达式、数值等都必须要有类型。对于程序中每一个用于保存信息的量,使用时我们都必须声明他的数据类型,以便编译器为他分配内存空间。C#的数据类型可以分为两大部分:值类型和引用类型(常用的2个 String 和 Object)。

由于C#强类型的特点,因此在C#中一种数据类型也就是一个类。比如 整型 int他的真名为System.Int32();

C#学习日记03---数据类型


由上表我们看的出,基本类型直接映射到基类库中的类型,因此两者之间可以互换,也就是说我们定义一个int型的变量,


int x = 12; (发现与C/C++定义数据类型类似)

可以写成这样: System.Int32 x = new System.Int32(12);

不同的类型定义的范围也有所不同:

C#学习日记03---数据类型

float数据类型用于较小的浮点数,因为它要求的精度较低。

double数据类型比float数据类型大,提供的精度也大一倍(15位)。在C#编译器一般默认小数类型为double类型,

如果想指定该值为float,可以在其后加上字符F(或f),如:

         float f = 12.3F;


decimal类型专门用于进行财务计算,高精度(28位)。

要把数字指定为decimal类型,可以在数字的后面加上字符M或(m),如:

    decimal d=12.30M;

C#变量名命名规则:

1)、由字母、数字或下划线"_"组成

2)、必须由“字母”或下划线"_"开头,不能以数字开头

3)、不能是c#中的关键字 如:int、string、bool、Main、class等

4)、区分大小写 如:小写的a 和 大写的A 是两个变量


下面就写个例子吧,要求由用户输入 姓名 年龄 身高 工资 性别然后输出“我的名字是:XX,性别是:XX,今年XX岁,身高是:XX,工资是:XX”

using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
  
namespace Example  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            String name;  //定义姓名为name  
            char sex;   //定义性别   
            uint age;   //年龄(年龄不能为负数)  
            double hight;  //身高  
            decimal salary;//工资  
                Console.WriteLine("你叫什么名字啊?");  
               name = Console.ReadLine();   //输入姓名  
  
             Console.WriteLine("你的性别是:");  
            sex = Console.ReadKey().KeyChar;  //写入性别  
            Console.WriteLine();   //换行  
  
            Console.WriteLine("你多大了?");  
            age =uint.Parse(Console.ReadLine());  //写入年龄(uint.Parse()是将读入的String类型转为uint类型,
            ReadLine()                                                    //的返回值是String 类型)  
  
            Console.WriteLine("多高啊?");  
            hight = double.Parse(Console.ReadLine());  //写入身高  
  
            Console.WriteLine("工资多少呀?");  
            salary = decimal.Parse(Console.ReadLine());  //写入工资  
  
            Console.WriteLine("我叫{0},是个{1}孩子,今年{2}岁了,我的身高是{3}米,工资有{4}元",name,sex,age,hight,salary);       //输出信息  
  
  
        }  
    }  
}

得到的结果是:

C#学习日记03---数据类型

唉! 又是这种黑面框,黑咕隆咚的丑死,以后学了Winform应该会好点吧 !

基于02日记中的输入与输出,通过查阅又get了一项新的输出技能,在上面的最后一行代码中有 {0},{1},{2}。。。可以有很多个,这一对“{}”叫占位符,,,(以下是我个人理解)就是我们在程序输出的时候挖 的一个又一个坑,然后再用第一个参数(“”中的内容是一个String类型的参数,参数与参数之间用逗号“,”隔开)后面的参数按顺序去填好 (有点俗阿)。

本着学无止境的探索精神,我又对他进行了一番探索; 当我们用占位符 的时候一定要按照{0},{1},{2}......这个顺序来吗?我试着改一下还是以上的代码,,后面的顺序改为这样 {0},{3},{1},{2},{10}。编译没有抱错但是运行输出的时候打印不出来,可能就是那个10的问题,原来不能跳着挖坑的,那就这样 {0},{3},{1},{2},{4},这次没跳了,交换了顺序,编译没错能运行,但是结果是这样:

C#学习日记03---数据类型

完全丧失常理 了 结果乱了。仔细观察后发现其实那个0,1,2,3,4是 给后面参数编的序号,{}里面是谁的序号就调用谁。

本着每日三省吾身的好学精神我又有疑惑了,在02日记中我输出aaa与bbb的时候我用了双引号 “” 表示字符串,但是如果我想输出双引号该咋办呢?想了好久,去网上查了下才知道 可以用\加符号就可以输出啦,于是我写了个不要脸的程序:

using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
  
namespace Example  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
                       Console.WriteLine("女神对我说:\"I Love You!!!\"");  
  
        }  
    }  
}

结果是:

C#学习日记03---数据类型

(哈哈,,没羞没臊的)总之 双引号是成功输出来了

本着做一个勇于探索的人,我又发现:输出双引号的时候我用 \ 来不让他转义 ,那要是我想输出 \ 该咋办呢?

可能是在 \ 前面再加个 \ 试了下没错 \\能够 输出 \ 所以要输出\\就得 写\\\ 以此类推 感觉挺麻烦的,于是又找了个一劳永逸

的方法 “@" ,,,Console.WriteLine(@"\\\");

结果输出 \\\ 不变

以上就是C#学习日记03---数据类型的内容,更多相关内容请关注PHP中文网(www.php.cn)!

相关标签: C#,数据类型