一个变量只不过是一个供程序操作的存储区的名字。
在 C# 中,变量是用于存储和表示数据的标识符,在声明变量时,您需要指定变量的类型,并且可以选择性地为其分配一个初始值。
在 C# 中,每个变量都有一个特定的类型,类型决定了变量的内存大小和布局,范围内的值可以存储在内存中,可以对变量进行一系列操作。
1.变量
声明变量格式:
数据类型 变量名 ; *int num;*
数据类型 变量名 = 值; *<u>int num = 1;*</u>
生命多个相同类型变量时 使用逗号隔开: *int num1 = 2,num2 = 3,num3 = 4;*
变量类型
有符号整形变量:
有符号整形变量: (可以存储一定范围内的 正负数 包括零的变量类型)
long 类型 取值范围: -900万兆到900万兆之间
int 类型 取值范围:-21亿多 到 21亿多之间
short 类型 取值范围:-32768多到 32768之间
sbyte 类型 取值范围:-128 到 127 之间
无符号整形变量:
ulong 类型 取值范围 为 0 - 1800万兆之间
uint 类型 取值范围 为 0-42亿多之间
ushort 类型 取值范围 为 0 - 65535之间
byte 类型 取值范围 为0 - 255 之间
浮点数(小数):
double 类型 保留15 到17位有效小数
decimal 类型 保留27 到28位有效小数
(声明变量时 要在值的后面添加m 告诉系统 它是decimal类型)
float 类型 存储7或8位有效小数
(声明变量时 默认为double类型 在值的后面加f是为了告诉系统 它是float类型)
布尔值(bool):
bool :bool值只有两个值参数:true false
true为真 false为假
字符:
char 类型 只能存放一个字符(使用 ' ' 来放置字符)
char c = 'a';
字符串:
string 类型 可以存放多个字符 没有上限(使用" ")
string str = "李昊选123456SARDGFHK";
弱类型
var类型
var声明时候没有类型 赋值时候才有类型,通常用于不知道数值是什么类型的时候 可以接收任意类型的变量
var 使用场景
1数组的遍历地方
ArrayList aa = new ArrayList(){"str1",111};
foreach (var item in aa){ Console.WriteLine(item); }
2接收方法的返回值时候使用var
var a1 = Test();
dynamic类型
dynamic可以定义任意类型的变量 他就是弱类型1 dynamic定义的变量类型就是dynamic ,var声明时候没有类型 赋值时候才有类型2 dynamic定义完变量 在调用对应的方法没有提示3 dynamic定义的变量 进行非该操作的时候 将会在运行期间保存 var声明将会在编译期间报错
声明dynamic类型
dynamic s2 = "da";
2.常量:
不能被修改的变量 称之为常量
可以使用const方法固定常量
*常量的命名格式:
const 变量类型 变量名 = 值;
<u>const int num = 20 ;</u>*
常量的使用方法同变量一样
3.变量本质:
字节:
变量所占用的范围为字节:
字节(byte) 是计算机用于计算存储容量的一种计量单位 也表示计算机中编程语言的数据类型及语言字 符 通常将八个二进制数 组成一组 称为一个字节。
有符号的二进制 和 无符号的二进制数 最高位 为符号位 1代表负数 0代表正数
通过sizeof方法 可以获取变量所占用的内存空间(单位:字节)
int se = sizeof(sbyte);
4.判断该类型是什么数据类型
一、GetType方法
a.GetType():获取当前变量的类型对象
string str = "Hello World";Console.WriteLine(str.GetType());
结果:
二、typeof方法
typeof(Int):获取的是Int类型的类型对象
int num = 10;Console.WriteLine(num.GetType() == typeof(int));
结果: true
三、is方法
a is Enum:获取一个boolean值,表示a是否是Enum类型或者可以隐式向上转型成为Enum类型的类型
enum Sex{ male, Female}Sex sex = Sex.male;Console.WriteLine(sex is Enum);
结果:true