C#:微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。
C#与Java有着惊人的相似,我花了一个表格,比较了C#、C++和Java最重要的功能有什么区别
功能 | C# | C++ | Java |
---|---|---|---|
继承 | 允许继承单个类,允许实现多个接口 |
允许从多各类继承 | 允许继承单个类,允许实现多个接口 |
接口实现 | 通过"interface”关键字 | 通过抽象类 | 通过“interface”关键字 |
内存管理 | 由运行时环境管理,使用垃圾收集器 | 需要手工管理 | 由运行时环境管理,使用垃圾收集器 |
指针 | 支持,非安全模式才支持,通常用引用代替指针 | 支持,一种很平常的功能 | 不支持,用引用代替指针 |
源代码编译后的形式 | .NET中间语言(IL) | 可执行代码 | 字节码 |
单一的公共基类 | 是 | 否 | 是 |
异常处理 | 异常处理 | 返回错误 | 异常处理 |
常用判断语句和循环语句
1:IF判断
if(条件1)
{
执行语句1
}
else if(条件2)
{
执行语句2
}
else
{
执行语句3
}
意义是:如果条件1成立,则执行语句1,否则判断条件3是否成立,成立则执行语句2,如果以上条件都不成立,执行语句3
2:switch选择
switch(变量或者表达式)
{
case值1:
语句1
break;
case值2:
语句2
break;
default:
语句3
break;
}
switch选择可以用if来判断表达,但if判断不一定能用switch选择来表达,值1值2必须是具体的值。
意义:先计算出变量或者表达式的值,该值从上到下一次和case后面的值进行比较,若与某一个case后面的值相同,则运行该case下面的代码,若与所有的case后面的值都不相同,则运行default后面的代码。
3:while循环
while(循环条件)
{
循环体
}
意义:如果魂环条件为真,则执行循环体,执行完循环体之后,再判断条件是否为真,如果为真,再执行循环体,然后再判断循环体是否为真,就这样一直进行下去,知道循环条件的判断为假,才会结束循环。
4:do while循环
do
{
console.write("请输入一个正数:");
number=double.parse(Console.ReadLine());
}
while(number<=0);
console.writeLine("你输入的数字是:"+number);
效果等同于while循环示例 Console.Write("请输入一个正数");
double number=double.parse(Console.ReadLine());
while(number<=0)
{
Console.write("请输入一个正数:");
number=double.parse(Console.ReadLine());
}
Console.writeline("你输入的数字是:"+number);
5:for循环
for(表达式1;循环条件;表达式2)
{
循环体
}
意义:先运行表达式1,然后判断循环条件是否为真,如果为真,则执行循环体,执行完后再运行表达式2,再判断循环条件。。。知道循环条件为假,才会结束循环。
注意:表达式1可以是任何代码,一定会执行,并且只执行一次,表达式2可以是任何代码,表达式2执行多少次取决于循环体执行多少次。
6:foreach循环
foreach(数据类型 变量 in 数组或集合)
{
循环体
}
意义:从数组或集合中一次去除每一项的数据,每取出一项数据,就把数据赋值给变量,每一次赋值后,运行一次循环。
注意:变量是用于接受数组或集合中每一项的数据;数据类型指变量的类型,要与数据或集合中每一项的类型相同。