C# basic 数据类型

C# 中的值类型

bool   布尔值 True 或 False False
char   16 位 Unicode 字符 U +0000 到 U +ffff '\0'
decimal   128 位精确的十进制值, 28-29 有效位数 (-7.9 x 1028 到 7.9 x 1028) / 100 到 28 0.0M
double    64 位双精度浮点型 (+/-)5.0 x 10-324 到 (+/-)1.7 x 10308 0.0D
float     32 位单精度浮点型 -3.4 x 1038 到 + 3.4 x 1038 0.0F
sbyte   8 位有符号整数类型 -128 到 127 0
byte   8 位无符号整数 0 到 255 0
short     16 位有符号整数类型 -32,768 到 32,767 0
ushort    16 位无符号整数类型 0 到 65,535 0
int      32 位有符号整数类型 -2,147,483,648 到 2,147,483,647 0
uint    32 位无符号整数类型 0 到 4,294,967,295 0
ulong    64 位无符号整数类型 0 到 18,446,744,073,709,551,615 0
long   64 位有符号整数类型 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 0L

 

整数类型   sbyte、byte、short、ushort、int、uint、long、ulong 和 char
浮点型 float 和 double
十进制类型 decimal
布尔类型 true 或 false 值,指定的值
空类型 可为空值的数据类型

字符串类型

字符串(String)类型 允许您给变量分配任何字符串值。字符串(String)类型是 System.String 类的别名。它是从对象(Object)类型派生的。

C# string 字符串的前面可以加 @(称作"逐字字符串")将转义字符(\)当作普通字符对待,
@ 字符串中可以任意换行,换行符及缩进空格都计算在字符串长度之内
 String str = "C:\\runoob.com";@"C:\runoob.com";

 对象(Object)类型

对象(Object)类型 是 C# 通用类型系统(Common Type System - CTS)中所有数据类型的终极基类。Object 是 System.Object 类的别名。所以对象(Object)类型可以被分配任何其他类型(值类型、引用类型、预定义类型或用户自定义类型)的值。但是,在分配值之前,需要先进行类型转换。

当一个值类型转换为对象类型时,则被称为 装箱;另一方面,当一个对象类型转换为值类型时,则被称为 拆箱

 动态类型

这些变量的类型检查是在运行时发生的。
声明动态类型的语法:dynamic <variable_name> = value;

指针类型

指针类型变量存储另一种类型的内存地址。C# 中的指针与 C 或 C++ 中的指针有相同的功能。type* identifier;   ----->  char* cptr;   int* iptr;

结构体

定义

struct Books
{
  public string title;
  public string author;
  public string subject;
  public int book_id;
};

声明

Books Book1;

特点

结构可带有方法、字段、索引、属性、运算符方法和事件。
结构可定义构造函数,但不能定义析构函数。但是,您不能为结构定义无参构造函数。无参构造函数(默认)是自动定义的,且不能被改变。
与类不同,结构不能继承其他的结构或类。
结构不能作为其他结构或类的基础结构。
结构可实现一个或多个接口。
结构成员不能指定为 abstract、virtual 或 protected。
当您使用 New 操作符创建一个结构对象时,会调用适当的构造函数来创建结构。与类不同,结构可以不使用 New 操作符即可被实例化。
如果不使用 New 操作符,只有在所有的字段都被初始化之后,字段才被赋值,对象才被使用。

结构体是值类型,类是引用类型,结构体不支持类的封装继承和多态。

枚举

枚举是一组命名整型常量。枚举类型是使用 enum 关键字声明的。
C# 枚举是值类型。换句话说,枚举包含自己的值,且不能继承或传递继承。

定义

enum <enum_name>
{
  list
};

enum Days { Sun, Mon, tue, Wed, thu, Fri, Sat };

类型转换

显式类型转换 - 显式类型转换,即强制类型转换。显式转换需要强制转换运算符,而且强制转换会造成数据丢失。

 

 

 

 

 

 

内置方法,

1 ToBoolean  如果可能的话,把类型转换为布尔型。
2 ToByte     把类型转换为字节类型。
3 ToChar     如果可能的话,把类型转换为单个 Unicode 字符类型。
4 ToDateTime     把类型(整数或字符串类型)转换为 日期-时间 结构。
5 ToDecimal     把浮点型或整数类型转换为十进制类型。
6 ToDouble     把类型转换为双精度浮点型。
10 ToSbyte     把类型转换为有符号字节类型。
11 ToSingle     把类型转换为小浮点数类型。
7 ToInt16     把类型转换为 16 位整数类型。
8 ToInt32     把类型转换为 32 位整数类型。
9 ToInt64     把类型转换为 64 位整数类型。
14 ToUInt16     把类型转换为 16 位无符号整数类型。
15 ToUInt32      把类型转换为 32 位无符号整数类型。
16 ToUInt64     把类型转换为 64 位无符号整数类型。
12 ToString     把类型转换为字符串类型。
13 ToType      把类型转换为指定类型。

 

posted @ 2022-08-01 18:06  Orientation  阅读(57)  评论(0编辑  收藏  举报