C#基础Word文档下载推荐.docx
- 文档编号:15344934
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:9
- 大小:21.10KB
C#基础Word文档下载推荐.docx
《C#基础Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C#基础Word文档下载推荐.docx(9页珍藏版)》请在冰豆网上搜索。
1,基本型/内置型
用户自定义型
A,内置类型:
CS使用.netFrameWork库中的数据类型
sbyte=System.SByte,...
类型
字节数
解释
byte
1
无符号字节型
sbyte
有符号字节型
short
2
有符号短字节型
ushort
无符号短字节型
int
4
有符号整型
uint
无符号整型
long
8
有符号长整型
ulong
无符号长整型
float
浮点数
double
双精度数
decimal8
固定精度数
string
unicode字串型
char
unicode字符型
bool
真假布尔型//只接受true和false两种值。
不接受任何整数类型。
B,用户定义类型包括:
类类型(class)
结构类型(struct)
接口类型(interface)
2,值类型(ValueTypes)和引用类型(ReferenceTypes)
A,值类型:
内存顺序分配在栈中。
他们包括:
所有基本或内置类型(不包括string类型)、结构类型、枚举类型(enumtype)
B,引用类型:
内存非线性分配在堆中,当它们不再被使用时CS通过垃圾收集器自动释放内存(C++用delete)。
它们使用new运算符来创建。
引用类型包括:
类类型、接口类型、象数组这样的集合类型类型、字串类型、枚举类型
结构型适于快速访问和拥有少量成员的数据类型。
如果涉及量较多,你应该创建一个类来实现他。
3,数据类型转换
隐式转换:
从低精度的转换到高精度的,所以不可能转换到char;
另外可以把0隐式转换成枚举型,其他整数不行。
显式转换
staticvoidMain(string[]args)
{
shortshortResult,shortVal=4;
intintegerVal=67;
longlongResult;
floatfloatVal=10.5F;
doubledoubleResult,doubleVal=99.999;
stringstringResult,stringVal="
17"
;
boolboolVal=true;
Console.WriteLine("
VariableConversionExamples\n数据类型转换范例\n"
);
doubleResult=floatVal*shortVal;
Implicit,->
double:
{0}*{1}->
{2}"
floatVal,shortVal,doubleResult);
shortResult=(short)floatVal;
short:
{0}->
{1}"
floatVal,shortResult);
stringResult=Convert.ToString(boolVal)+Convert.ToString(doubleVal);
Explicit,->
string:
\"
{0}\"
+\"
{1}\"
->
boolVal,doubleVal,stringResult);
longResult=integerVal+Convert.ToInt64(stringVal);
Mixed,->
long{0}+{1}->
integerVal,stringVal,longResult);
}
三,变量:
1,普通变量:
(1),命名规则:
字母或_或@+字母或_或数字(/用于转义,@用于逐个转义指定,@常用于保留关键字前以保持与其他语言兼容)
(2),声明变量:
变量类型变量名
变量赋值:
变量=要赋的值
C#变量被访问之前必须被初始化;
否则编译时会报错。
因此,不可能访问一个未初始化变量(如不确定的指针、超出数组边界的表达式)。
变量在使用前最好习惯是要先声明和初始化。
(3)C#中没有全局的的变量或全局函数,全局方式的操作是通过静态函数和静态变量来实现的。
inti;
stringtext;
//在循环外未初始化
for(i=0;
i<
10;
I++)
{
text="
Line"
+Convert.ToString(i);
//在循环中未初始化,在退出循环的时候会丢失值,再引用就出错。
{0},text);
}
Console.WriteLine("
Lasttxetoutputinloop:
//出错。
改正方法是在循环外初始化:
stringtext="
"
(4)命名约定:
简单的用camelCase,复杂的用PascalCase
(5)变量的七种类型:
classA
publicstaticintx;
//静态变量,存在期从类装载直到该程序结束。
inty;
//非静态变量,或实例变量,从类实例创建到实例空间释放。
/*v[0]是数组元素,a是值参数,b是引用参数,c是输出参数*/
voidF(int[]v,inta,refintb,outintc){
inti=1;
//局部变量,不会被初始化
c=a+b++;
//
}
2,枚举
enum枚举名:
枚举值类型(默认是int,默认赋值0,1,2...)
{
枚举值1=...,
枚举值2=...,
枚举值3,//不赋值的话,默认为最后一个明确具体值的值+1
...
枚举名变量名=枚举名.枚举值
namespaceCh05Ex02
enumorientation:
byte
{
north=1,
south=2,
east=3,
west=4
///Class1'
sDesciption
classClass1
bytedirectionByte;
stringdirectionString;
orientationmyDirection=orientation.north;
mydirection={0}"
myDirection);
directionByte=(byte)myDirection;
//因为enum存得下byte,所以理论上可以正确地反过来转换,但逻辑上不一定正确。
myDirection=(orientation)myByte;
directionString=Convert.ToString(myDirection);
//等价命令是directionString=myDirection.ToString();
//因为不单是把枚举变量值转存到string变量中,所以不能用string(mydirection);
//反向转换命令是orientationmyDirection=(orientation)Enum.Parse(typeof(orientation),myString);
但由于enum不一定存得下string,所以可能出错。
如myString赋值为North,就不能映射到orientation中的north,出错。
byteequivalent={0}"
directionByte);
stringequivalent={0}"
directionString);
3,结构
struct结构名:
访问方式1变量类型1变量名1;
//访问方式public/private
访问方式2变量类型2变量名2;
结构名结构变量名;
结构变量名.枚举值=...;
4,一维数组
变量类型[]数组名=new变量类型[元素个数]{元素0,元素1,元素2...}//元素个数必须是整数或者整数常量,而且必须与后面的元素列值个数相同,否则出错。
元素个数的new声明和后面的元素列值可以只选一个,就能声明并初始化数组。
遍历方法
A,For循环到.Length
for(i=0,i<
friendNames.Length,i++)
Console.WriteLine(friendNames[i]);
B,Foreach进行只读访问
foreach(stringlistNameinfriendNames)
Console.WriteLine(listName);
5,二维数组(多维)
变量类型[,]数组名=new变量类型[一维元素个数,二维元素个数]{{元素00,元素01,元素02...},{元素10,元素11,元素12...}...}
6,直角数组(交错数组,数组中的数组)
7,字符串操作:
stringmyString="
Ihaveadream."
charmyChar=myString[2];
//把string变量当作只读的char数组使用,不能改写myString[2]
char[]myChars=myString.ToCharArray();
char[]separator={'
'
};
//设定分隔符
string[]myWords=myStrin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 基础