C#<1> C#内置的基础数据类型

C# 主要包括五大类内置的基础类型,整型,浮点型,Bool 类型,字符型,引用类型,其中每一种类型下有的又包含各种子类型;

1、整型 C#中的整型又包括四种子类型,所能表示的整数范围也各不相同;

(1) byte  8位 默认无符号 有无符号表示 sbyte;

(2) short 16位 默认有符号 无符号表示 ushort;

(3) int 32位 默认有符号 无符号表示 uint;

(4) long 64 位 默认有符号 无符号表示 ulong;

2、浮点型 C#中又三种精度的浮点数 日常开发中常用的只有两种

(1)float 单精度浮点型 32位;

(2)double 双精度浮点型 64位 代码中对浮点数硬编码时默认存储为双精度浮点数 如 var d = 0.5, d 类型为 double ,float 表示 0.5f;

(3)  decimal 超高精度浮点数 128位 通常用于财务计算;(在一次面试中曾被考过 decimal 的位数);

3、bool 类型 和其他编程语言一样 bool 只包含两种值 true or false;

4、字符型 char 16位 用单引号包围  'c' 支持转义字符和16进制表示方式 ,但是和C语言不同 char 类型无法隐式转换成整型;

5、引用类型,C#是面向对象的编程语言,主要包含两种内置的引用类型;

(1) 万类之根本 object C#中所有内置的包括自定义的类都默认继承此类,object 中包含许多所有类通用的方法,如tostring() 等,也可以在子类中重写这些方法;

(2) string 字符串类型 用双引号包围的一串字符,“string” 字符串是引用类型也就是说 使用字符串时系统会在托管堆中开辟内存,而不是在运行时堆栈中;

PS : 日常开发中遇到的和基础数据类型相关的优化:

  由于字符串类型的在日常开发中比较常用所以在使用时要非常注意,避免不必要的堆内存消耗,在进行大量字符串的拼接或者其他操作时最好使用StringBuider;在优化代码时经常会看到由于大量的字符串拼接而产生较高的GC,而且大部分情况都是可以通过人为的方式避免;这一点在开发过程中要时刻谨记;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值