1.数值的类型
var x = 3; //依据给的数据自动识别其数据类型
1.1整型
int x = 2; //默认整数为int
long y = 3L; //如果为64位整数后面就要加L
类型 | 说明 | 取值范围 |
---|---|---|
byte | 无符号的8位整数 | 0到255即2^8-1 |
sbyte | 有符号的8位整数 | -128到127 |
char | 16位Unicode字符 | U+0000到U+FFFF,例如字符“x”对应的Unicode编码为“\0041” |
short | 有符号16位整数 | -32768到32767(即-215到215-1) |
ushort | 无符号16位整数 | 0到65535(即2^16-1) |
int | 有符号32位整数 | -231到231-1 |
uint | 无符号32位整数 | 0到2^32-1 |
long | 有符号64位整数 | -263到263-1 |
ulong | 无符号64位整数 | 0到2^64-1 |
1.2浮点型
float x = 3.0F; //单精度
double y = 4.0D; //默认输入为双精度,后面可以不输入D
类型 | 大小 | 精度 | 取值范围 |
---|---|---|---|
float | 32位 | 7位 | -3.4x1038到3.4x1038 |
double | 64位 | 15位到16位 | ±5.0x10324到±1.7x10308 |
1.3十进制型
类型 | 精度 | 取值范围 |
---|---|---|
decimal | 28位到29位有效位 | (-7.9x1028到7.9x1028)/(10^(0-28)) |
2.布尔类型
布尔类型用于储存true和false,也可以将计算结果为布尔类型的表达式赋给bool变量。
bool speed = false
speed = 80 > 100
bool b = true;
bool b2 = false;
3.字符和字符串类型
char c = 'a'; //单个字符,可用单引号
string str = "a"; //字符串,可以为多个字符
string 类型是其别名,表示由0个或多个Unicode字符组成的不可变序列。
4.枚举类型
枚举类型属于值类型,枚举类型使用enum关键字来完成声明。默认情况下,枚举中的每个元素都是int类型。
enum Gender
{
Female,
Male
}
使用冒号可以定义值类型
enum Gender:byte
{
Female,
Male
}
默认声明的第一个枚举成员为0,之后的+1。
5.结构体类型
结构体类型是一种值类型,通常用于表示如Point,Rectangle,Color等的轻量级对象。
//定义点结构体
public struct Point
{
public int x;
public int y;
public Point(int px,int py)
{
x = px;
y = py;
}
}
结构体与类有着几乎相同的语法。
6.数组类型
数组类型是一种引用类型,代表了相同类型元素的集合。
type[] array=new type[arrayCount];
这里,type为数组元素的类型,既可以是值类型,也可以是引用类型。