当前位置:首页 > C#教程 > C#基础

C#数据类型

堆栈和静态存储区

堆:空间比较大,但是读取速度比较慢

​ 能在任意区域插入和删除

栈:空间比较小,但是读取速度比较快

​ 数据只能在栈顶部进行插入和删除,先进后出

变量

变量先声明 再赋值 最后使用

java标识符 是以 下划线、字母、$开头

c#标识符 是以 字母、下划线、@开头

camel 驼峰命名原则:要求变量名首字母单词小写,其余单词首字母大写

Pascal :每一个单词首字母都是大写 用于类名和方法名

局部变量是在函数、复合语句内、for循环中。存储在栈区;

全局变量是在函数外部定义的变量;

成员变量在方法外部,定义在类中,在整个类中可以被访问,成员变量**随着对象的建立消失而定,存在于堆内存当中,有初始值

类型 描述 范围
decimal 128 位精确的十进制值,28-29 有效位数 (-7.9 x 1028 到 7.9 x 1028) / 100 到 28
sbyte 8 位有符号整数类型 -128 到 127
short 16 位有符号整数类型 -32,768 到 32,767
uint 32 位无符号整数类型 0 到 4,294,967,295
ulong 64 位无符号整数类型 0 到 18,446,744,073,709,551,615
ushort 16 位无符号整数类型 0 到 65,535
var 它是一个声明变量的占位符。它主要用于在声明变量时,无法确定数据类型时使用。
var特点

必须在定义时初始化。也就是必须是var s = “abcd”形式,而不能是如下形式: var s; s = “abcd”;

一但初始化完成,就不能再给变量赋与初始化值类型不同的值了。

var要求是局部变量。

float、double、long类型变量赋值添加F、D、L(大小写均可)尾缀。默认为double类型,float不加 f 报错。

double类型,声明整数为double类型时,需要加后缀 D或d

decimal后缀必须加 M或m,不加则视为double类型

如需得到一个类型或一个变量在特定平台上的准确尺寸,可以使用 sizeof 方法。表达式 sizeof(type) 产生以字节为单位存储对象或类型的存储尺寸。

三种数据类型:值类型 ;引用类型有对象(object)类型、动态(dynamic)类型 、字符串类型;

动态(dynamic)类型可以在动态类型的变量中存储任何类型的值

动态类型与对象类型相似,但是对象类型变量的类型检查是在编译时发生的,而动态类型变量的类型检查是在运行时发生的。

转义字符

/ : 斜杠 : 反斜杠

转义字符:一个" " 加一个 特殊的字符,组成了一个具有特殊意义的字符

n 表示换行
" 表示英文半角双引号
t 表示一个tab键的空格
b 表示一个退格键,放在字符串两端没有效果
rn 写入文件进window系统时不认识 n,只认识rn
表示一个
1
2
3
4
5
6
@符号的作用:

C# string 字符串的前面可以加 @(称作"逐字字符串")将转义字符()当作普通字符对待 ,取消 的转义作用
string str = @"C:Windows";  等价于 string str = "C:Windows";
//一般用于路径
string path = @"E:ljxa-StudyC#笔记";
1
2
3
@ 字符串中可以任意换行,换行符及缩进空格都计算在字符串长度之内。 将字符串按照编辑的原格式输出。
System 命名空间中的 Console 类提供了一个函数 ReadLine(),用于接收来自用户的输入,并把它存储到一个变量中。

静态和动态常量

C#静态常量是使用 const 关键字来定义的 。定义一个静态常量的语法如下:

const <data_type> <constant_name> = value;
//静态常量编译时,使用常量的值去替换
int value = <constant_name>
//是使用<constant_name>的值去替换value
1
2
3
4
C#动态常量是使用 readonly 关键字来定义的 。定义一个动态常量的语法如下:

readonly <data_type> <constant_name> = value;
1
静态常量和动态常量两者的区别如下:


Java静态常量是使用static final

public static final <data_Type> <constant_name> = value;
1
// ++a 先进行自增运算再赋值

交换变量

//当面试说不可以使用第三个变量来交换变量时
int n1,n2;
n1 = n1 - n2;
n2 = n1 + n2;
n1 = n2 - n1;
1
2
3
4
5
占位符

{0} 挖几个坑 就填几个坑 从0开始 按照填的下标数字顺序输出

输出小数时 {0:0.00} 表示输出两位小数

值传递和引用传递

方法参数传递:默认值传递

【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!