C# 数据类型

DataTypes

简单介绍,不深入

bool 只有True 和 False

注意 True False 和 1 0 不是一个概念,是需要相互转换的,一个是int,一个是bool
转换时候可以用System.Convert 和 类型自带的ToString 等


Int32 一个32位的整数,是C#里用的最多的,简写为int
这是有符号的整数,范围是 -2,147,483,648 ~ 2,147,483,647
byte :0-255 无符号整型
short:16位有符号,-32,768 and 32,767
long: 有符号64位,范围不写了,很大

两个整数相除,结果还是整数,要想有小数,把其中一个转换成float就行了


类型转换
显式转换 或 隐式转换
小类型的可以 隐式的 转换成大类型的,因为编译器知道小值放大空间里可以放得下,反过来就不行了,需要显式转换

但是这个显示转换,a的值要是很大超过 了int的范围,这样的转换往往会带来一些隐藏问题,因此转换要注意


float 单精度浮点型  精度差 最多7位有效数字   定义的时候要以f结尾,不然按默认的double算了
double 双精度浮点型 精度好 最多16位有效数字
decimal 十进制数 精度最好 最多29位有效数字   定义的时候要以m结尾


这就是3种数据类型 精度 上的差距

精度越大,运算越慢,但是多次运算后的结果也是最精确的,到底用哪种数据类型,取决于你的需求,你对精度要求高不高,你对运算时间要求快不快,你的数据最大值能有多大,等等


Char 单字符,单引号

前面讲的string 其实就是char的集合,我们可以用foreach遍历出string里的每个char

每个字符都对应一个数字,ASCII码表里只有100多个,那是常规的字母数字符号之类的,还有其他的13000多个Unicode 字符呢
(int)c 把c代表的字符转换成对应的数字
(char)(169) 把数字169转换成对应的字符

https://unicode-table.com/en/ 这里有个对应表,很长很长

Char class 里有一些有用的method  比如检查输入 是不是以数字开头

检查是不是字母,是不是数字,是不是大写,等等等等

posted on 2019-09-20 23:49  chungehpu  阅读(180)  评论(0编辑  收藏  举报

导航