俗话说温故而知新,学习一门知识最好的方法就是不断的去咀嚼回味,学习编程更是如此。对于.NET平台中的C#语言而言,有着强大的类库、不断的在更新迭代几乎每隔一年都会更新一个新的模块,.NET Framwork也从1.0版本到现在最新的4.6的版本,从封闭性到近两年的开源,面对一个庞大的编程语言平台我们也要不断的去更新自己的知识结构。从这篇文章开始,让我们从一个初学者的身份去一步步的学习C#这门语言。

首先让我们来思考一下,什么是数据?数据能用来干什么?数据怎么来用?

数据其实很真实的存在我们的世界里,比如你的名字、你的性别、你的某一样物品的名字、甚至你的某种行为都可以转换成是一种数据,数据就是从这些基础上抽象从来的。有了不同的数据类型,我们才可以在计算机中更好的存储我们的数据,让数据分门别类,充分合理的利用我们的存储空间。在我们C#编程中使用的数据类型都是内置在.Net Framwork中。

C#中有15个预定义的类型,当然随着需求的增加也可以自定义,共有两大类 值类型和引用类型,引用类型有Object 和 String ,值类型又分为 整型:sbyte、short、long、int、byte、ushort、uint、ulong, 浮点类型:float 、double, 布尔类型:bool,字符类型:char, decimal类型。

1.值类型

1.1整型:

类型

名称

命名空间

说明

范围

整型

sbyte

System.Sbyte

8位有符号整数

-128 ~ 127

short

System.Int16

16位有符号整数

-32768 ~ 32767

int

System.Int32

32位有符号整数

-2147483648~ 2147483647

long

System.Int64

64位有符号整数

-263 ~ 263-1

byte

System.Byte

8位无符号整数

0 ~ 255

ushort

System.UInt16

16位无符号整数

0 ~ 216-1

uint

System.UInt32

32位无符号整数

0 ~ 232-1

ulong

System.UInt64

64位无符号整数

0 ~ 264-1

整型,顾名思义整数型及非小数。

那么什么是无符号的整数,什么是有符号的整数?

学习过计算机原理的应该就会明白,对于一个8位二进制的机器编码来说,有符号代表的是负数,无符号代表的是整数 例如0111 1111就是无符号的整数,1111 1111就是有符号的整数,第一位就是符号位。

1.2布尔型:

类型

名称

命名空间

说明

范围

布尔型

bool

System.Boolean

表示true或false

true或false

布尔类型一般用作逻辑判断,true为真、false为假。

1.3浮点类型:

类型

名称

命名空间

说明

范围

单精度浮点类型

float

System.Single

32位单精度浮点型

-3.4 * 1038至3.4 * 1038

双精度浮点型

double

System.Double

64位双精度浮点型

-1.79769e+308至1.79769e+308

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

double类型提供的精度比float类型大一倍。

声明一个小数如:1.31,未指定类型则默认为Double型,float类型需要添加一个f 如1.31F。

1.4 decimal类型:

类型

名称

命名空间

说明

范围

布尔型

decima

System.Decimal

128位高精度十进制数表示法

±1.0 * 10e-28至±7.9*10e28

decimal类型用于比较精确的数学计算,比如财务计算,如果指定decima类型,需要在数字后面上M,如:1.31M

1.5字符类型

类型

名称

命名空间

说明

字符类型

char

System.Char

表示一个16为位的(Unicode)字符

声明一个char类型的变量时需要用单括号括起来,如’A’

如果字符是用双括号括起来 “A”则认为是字符串(string)变量

2.引用类型

object 和 string

类型

名称

命名空间

说明

Object类型

object

System.Char

所有类型的基类

字符串类型

string

System.String

字符串

object为所有类型的一个基类,所有的类型都隐式的从object中派生。

对于string可能会有点疑惑为什么string是一个引用类型,而不是值类型呢?因为string类型是一个不可变的类型,将会在后面的章节会讲到。

 

 

C#基础知识-数据类型(一)的更多相关文章

  1. C语言基础知识-数据类型

    C语言基础知识-数据类型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.常量与变量 1>.关键字 C的关键字共有32个. >.数据类型关键字(12个) char,s ...

  2. java基础知识-数据类型及转换

    1.java中的常量大体分为两种: <1>字面量常量 <2>自定义常量 2.java中常量(字面量)的分类:<1>,整数常量:直接出现的整数<2>,小数 ...

  3. 006PHP基础知识——数据类型(三)

    <?php /** * 数据类型(三) * PHP是一个弱类型的语言 */ //检测数据类型:gettype() 返回字符串的数据类型 /*$str="美丽中国"; echo ...

  4. 004PHP基础知识——数据类型(一)

    <?php /* * 数据类型(一) * 标量类型:整型(int) 浮点型(float) 字符串型(string) 布尔型(boolean) * 复合类型:数组(array) 对象(object ...

  5. SQL Server 基础知识/数据类型/数值类型

    数据库设计简单地来讲,也就是设计表格的过程. 表格存储的数据是可以理解为一个二维表,由行和列组成. 原则上来讲,一个数据库只需要一个字段,一个数据类型就可以解决所有的问题,但是这样做并不明智,所以一般 ...

  6. Java基础知识(数据类型和集合)

    一.数据类型 包装类型 包装类型是对基本数据类型不足之处的补充. 基本数据类型的传递方式是值传递,而包装类型是引用传递,同时提供了很多数据类型间转换的方法. Java1.5 以后可以自动装箱和拆箱 二 ...

  7. java基础知识--数据类型

    计算机时识别不了我们编写的代码语言,计算机中的数据全部采用二进制表示,即0和1表示的数字,每一个0或者1就是一个位,一个位叫做一个bit(比特).(实际上计算机只能识别高低电平,而不是0和1.) 字节 ...

  8. c++基础知识-数据类型

    1.每次新建项都可需写内容 #include <iostream> using namespace std; int main() //main函数有且只有一个 { system(&quo ...

  9. SQL基础知识----数据类型

    VARCHAR(VERiable CHARacter):可变动字符.用于保存以文本格式处处的信息,最大可以储存255个字符.一般使用为VAECHAR(10)   --表示最多可以存储10个字符 INT ...

随机推荐

  1. MyBatis极速入门开发手册(2017-2-6更新)

    前言: 本篇文章对我的学习内容做一个归纳梳理,同时也记录一些学习过程中遇上的问题及注意事项等等,可以帮助新入门的朋友们消除一些误区与盲区,希望能帮上一些正在学习的朋友们.在编写时会引用一些mybati ...

  2. 部署Cloudera Management for centos 7

    hadoop生态圈框架工具甚多,自己整合起来很是繁琐,特别是oozie以及hue结合来实现hive.mr.spark等定时依赖任务更是一步一个坑,为了减少踩坑,只好从apache hadoop,转向C ...

  3. 让CEF支持FLASH(非安装插件的形式)

    测试环境: CEF3 + CefGlue 下载FLASH的NPAPI DLL文件 , 在CEF目录下新建文件夹plugins,然后把DLL文件放进去即可. 据说下面是PPAPI的方式,未测试 启动的时 ...

  4. HTML Socket实现 .NET

    HTML5 拥有许多引人注目的新特性,如 Canvas.本地存储.多媒体编程接口.WebSocket 等等.虽然现在大家把它捧的很火的样子,但是个人认为它还需要其他平台的支持才能真正的"火起 ...

  5. 把GIF背景变透明

    准备软件: 1.Ps cs4 2.QuickTime Player 7.74 开始: 1. 2.弹出文件选择框,但是发现不能选择GIF格式. 3.没关系,在文件名框输入*.*回车,就发现可以选择GIF ...

  6. QT Creator 快速入门教程 读书笔记(二)

    一 窗口部件 基础窗口部件QWidget类是所有用户界面对象的基类,窗口和控件都是直接或间接继承自 QWidget,下面我们来看一个很简单的例子: 窗口部件(Widget)简称部件,是QT中建立界面的 ...

  7. 浅谈js中的浅拷贝和深拷贝

    在js中如何把一个对象里的属性和方法复制给另一个对象呢? 下面举一个例子来说明: var person={name:'chen',age:18}; var son={sex:'男'}; functio ...

  8. iwebshop里面传数组且输出

    //php后台 $starttimestr = $arr[0]['forea_time']; $endtimestr = $arr[0]['end_time']; $data['starttime'] ...

  9. Unity 3D Framework Designing(9)——构建统一的 Repository

    谈到 『Repository』 仓储模式,第一映像就是封装了对数据的访问和持久化.Repository 模式的理念核心是定义了一个规范,即接口『Interface』,在这个规范里面定义了访问以及持久化 ...

  10. WPF之路二: button添加背景图片点击后图片闪烁问题

    在为button添加背景图片的时候,点击后发现图片闪烁,我们仔细观察,其实Button不仅仅只是在点击后会闪烁,在其通过点击或按Tab键获得焦点后都会闪烁,而通过点击其他按钮或通过按Tab键让Butt ...