【C#.Net】c#.Net基础入门
1. .net的含义:
一般指.Net Framework框架,是Microsoft为开发应用程序而创建的一个具有革命意义的平台。c#语言可以在这个平台开发,.Net Framwork平台中有很多包可以供程员#代码时候直接调用。
上图是一个简单的.net框架。
.NET Framework是用于Windows的新托管代码编程模型。它强大功能与新技术结合起来,用于构建具有视觉上引人注目的用户体验的应用程序,实现跨技术边界的无缝通信,并且能支持各种业务流程。
.net有2种交互模式,分别是B/S,C/S
2.c#的含义:
运行在.NET(CLR-运行语言)上的,用于创建应用程序的一种高级编程语言。
C#一般通过编辑器Mirosoft Visual Studio,在其中创建.Net Framework项目,选择
创建好项目就可以在其中进行编程了。一个项目只能有一个Main方法,项目只能通过Main方法作为索引去运行这个项目中的内容。
直白一点讲,C# 同Python一样是一门语言,.Net(可以理解为.Net Framework)是一个平台,这个平台中有很多成熟封装好的包可以供c#语言直接调用,Microsoft Visual Studio是一个编辑器,编辑器中可以创建类型为.Net Framework平台的项目。
可以用C#语言通过Web Forms创建ASP.NET应用程序。
它是专门为与Microsoft的.NET Framework一起使用而设计的。(.NET Framework是一个功能非常丰富的平台,可开发、部署和执行分布式应用程序)。
它是一种基于现代面向对象设计方法的语言,在设计它时,Microsoft还吸取了其他类似语言的经验,这些语言是近20年来面向对象规则得到广泛应用后才开发出来的。
有一个很重要的问题要弄明白:C#就其本身而言只是一种语言,尽管它是用于生成面向.NET环境的代码,但它本身不是.NET的一部分。.NET支持的一些特性,C#并不支持。而C#语言支持的另一些特性,.NET却不支持(例如运算符重载)!
两者之间的联系:
说了这么多,显而易见,.NET是框架平台,而C#是语言。但是,因为C#语言是和.NET一起使用的,所以如果要使用C#高效地开发应用程序,理解Framework就非常重要。
3、ASP.NET是一个网站开发的技术,仅仅是.NET框架中的一个应用模型。
ASP.NET 是用于生成基于Web的应用程序的内容丰富的编程框架。
哔哩哔哩学习链接:https://www.bilibili.com/video/av10011565?p=1
共25讲:
ASP.NET写的是网页
第一个程序“HelloWorld”
变量–小写字母开头,驼峰(各单词首字母大写)
一条语句两个变量
string str1,str2=”qwe”—–声明的时候直接赋值
连等赋值“qwe”赋值给str2,str2赋值给str1
注释:
//行注释
/**/块注释
数据类型
浮点型数据有三种:float,double,decimal
金融计算用decimal,其他项目都用double
指数写法:2E2—-@*10的2次幂
十六进制:255
Boolean布尔
字符类型–char–代表一个字符
\n为回车
\t Tab空格
\\代表一个\
上面的\\’应该是\”,上面写错了代表“
\a一声响应,运行显示控制台时会有“滴”的一声
string为一堆char的集合
打印结果
如果string中打印某个系统路径,那么里面会有非常多 的\,需要多次转义非常麻烦,我们可以在路径前面统一加一个@,后面就不用每个\都转义啦,非常方便
如果不赋值给b,那么a还是小写的a
当有大量数据修改的时候用StringBuilder(为引用类型,也可以叫做对象,是字符串操作类,可以增强字符串的处理能力,有批量字符串处理的时候可以应用到,减少字符串的整体处理时间)
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 using System.Diagnostics; 7 8 namespace データ型 9 { 10 class Program 11 { 12 static void Main(string[] args) 13 { 14 //添加计时器,看计时器中代码执行多长时间(计时器.start();和计时器.stop();之间内容为计时器计时的范围。) 15 Stopwatch 计时器 = new Stopwatch(); 16 计时器.Start(); 17 //字符串修改 18 //string str = string.Empty; 19 //for (int i=0;i<10000;i++) 20 //{ 21 // str += i.ToString(); 22 //} 23 StringBuilder sb = new StringBuilder(); 24 for(int i = 0; i < 10000; i++) 25 { 26 sb.Append(i.ToString()); 27 } 28 计时器.Stop(); 29 Console.WriteLine(计时器.ElapsedMilliseconds); 30 31 Console.Read(); 32 33 } 34 } 35 }
View Code
string number=null;—不存在,没有任何形式存在,没有这个字段
string.Empty—空值,可以填入空值
无法int一个null,以下写法是错误的:
?
var=variable就是【变量】的英文,就是不特意定义后面的值是什么类型,类型定义为var后,编译器自动识别为什么类型。
数据类型之间的转换
显示写错,应为显式—从高类型到低类型转换,很容易溢出哦~
long转换成int
检查是否溢出:可以用checked()去检查
如果以上代码中不用checked方法去检查是否溢出,那么控制台会显示值,为负值,最大值+1后溢出到负值了。如果加上checked方法去检查,那么则控制台不会显示值,但是程序中会弹出友好的提示报错信息,提示溢出了。
添加checked方法后,会报如下错误:
隐式–从低类型向高数据类型转换–正常,不会报错了
Parse()解析字符串,可以吧字符串转换成string类型
TryParse()
ToString()—任何类型往字符串转换
System.Convert()—-同Parse一样可以达到一样的效果,不过是不同的方法。