C#是一门编程语言,为什么我今天开始学C#了,下学期有门C#的课,以及有一个经验丰富的老学长正在做C#项目,由于之前学过C++和C基础,所以,C#的基础部分我查看文档来尝试能否自学归纳,而不是一直依靠视频(由于是归纳,不会像文档描述的那么仔细,我会把我自己认为重要的进行归纳,便于自己以及他人日后翻阅查找)
1.C#是.Net框架的一部分,可以产生高效率的程序,是一个面向对象的语言
2.使用C#可以编写windows form,web application,web service等
3.ide选择vs2010即可(找不到2010资源,于是使用2013编译)
using System;//借用系统库函数 namespace HelloWorldApplication//命名空间(就是存储的项目名字) { /* 类名为 HelloWorld */ class HelloWorld { /* main函数 */ static void Main(string[] args)//和java类似,没有public只是 { /* 我的第一个 C# 程序 */ Console.WriteLine("Hello World!");//console的输出方法 Console.ReadKey();//读取字符 } } }
4.C# 是大小写敏感的。
5.与 Java 不同的是,文件名可以不同于类的名称。
6.标识符的注意点,必须以字母,下划线或者@开头,后面可以字母数字以及@,主要是@,其他都与java一样
7.数据类型
值类型(value types)13个
bool,byte,char,decimal,double,float,int,long,sbyte(signbyte有符号字节),short,uint,ulong,ushort
使用sizeof(type)可计算值类型的大小
对象(Object)类型
动态(Dynamic)类型
字符串(String)类型 可使用逐字字符@ 例子:str=@“ dsdad” 在编译时不被编译成换行
指针(type*)类型
8.强转
可以用(type)value转换
也可以用.totype转换
9.Console.Readline()读取一行字符
10.在 C# 中没有全局变量的概念,所有变量必须由该类的实例进行操作
static <data_type> <variable_name> = value;
11. 常量与c语言一样
12.格式化
int c = 1,b=2,a=1; Console.WriteLine("{0}{1}{2}",c,b,a);
13.c#与c不同,支持>=和<=操作
支持is和as字段
14.支持foreach循环
15.封装---除了public private protected--比java多了internal:同一个程序集可以访问
protected internal:访问限于当前程序及或派生自包含类的类型
16.Nullable 可空类型 用?表示
int? i = 3 //等于 Nullable<int> i = new Nullable<int>(3); //通常写法
< data_type> ? <variable_name> = null;
Null合并运算符
num=num1??12
如果num1为null,则返回12
17.foreach语法
foreach (int j in n)