C#基础部分(二)
-------------------------------------------------今天的基础任务是:看完for循环---------------------------------------------------
1、解决方案的问题
运行的时候注意启动项目的设置,在工具>选项>生成并运行里设置一下。
学会使用断点来调试程序,执行到断点处程序就停一下。
变量的作用域,例如sum的作用域就是sum所在的{}内部、sum声明之后,在声明之前是没法用的。
2、循环的中断
break:立即终止整个循环
continue:立即终止当前循环步骤,进行下一次循环步骤
用代码说明break continue return的区别:
int i = 0;
while (i<12)
{
Console.WriteLine("i={0}", i);
i++;
if (i == 10)
{
//break;//终止了while循环,继续while后面的代码
//continue;//终止了while本次循环,继续while后面的代码
return;//终止当前执行的函数,函数戛然而止,后面代码不会被执行
}
Console.WriteLine("i自增以后i={0}",i);
}
Console.WriteLine("before readkey");
Console.ReadKey(); // 其实return和break continue没有可比性
例题:用while和continue实现计算1到100之间除了能被7整除之外所以整数的和
while (i <= 100)
{
sum = sum + i;
i++;
if ((i % 7) == 0)
{
i++; //最常见的错误!i 不会自己自增
continue;//如果被7整除余数是0,就说明能被整除
}
}
//学习一种编程序的思想,遇到问题首先把问题简单化。
例题二:用while break实现要求用户输入admin和888888,只要不是就一直提示输入
if (username == "admin" && pwd == "888888")
{
Console.WriteLine("right!");
break;
} //输入正确就直接中断掉
3、for循环
for(code1;code2;code3),for里面的三段都可以省略,但是不能没有分号;!
code1:循环的初始化代码,只在循环开始之前运行一次;
code2:bool类型表达式,每次循环完成后判断一下是否为true,只有为true才会进行下一次循环;
code3:每次循环之后执行一次
4、类型转换Cast和convert
把源类型赋值给目标类型,两个类型不一致的时候会发生类型转换。
Cast:将某种数据类型的表达式显式转换为另一种数据类型。
显式转换和隐式转换:当目标类型一定能满足源类型转换过去后的要求的话就是隐式转换;如果当目标类型不一定能满足源类型转换过去后的要求的话就需要显式转换(需要程序员自己负责,不一定能转换成功)。
cast和convert
只有在内存存储上存在交集的类型之间才能进行cast,否则不可以。比如:int i;string s=(string )i,这是不可以的,反之也不可以。这种情况就必须用convert类提供的方法。
convert不再是内存级别的转换,而是考虑数据意义的转换。convert是一个加工、改造的过程。而cast只是换一个数据角度。
5、MVC
老是看到MVC这三个字母,想到以后肯定会学到,就先百度了一下:
MVC是三个字母的缩写:Model(模型) View(试图) Controller(控制)。MVC模式的目的是实现WEB系统的智能分工,Model层实现系统中的业务逻辑,通常用JavaBean(是用JAVA写成的一种可重用组件)或者EJB(J2EE的一部分:Interprise JavaBean,定义了一个用于开发基于组件的企业多重应用程序的标准)实现。View层用于与用户的交互,通常用JSP来实现。Controller层是Model层与View层之间的桥梁(感谢百度!)
6、需要记住的几个缩写:
MSIL:微软中间语言 Microsoft Intermediate Language
CLR:公共语言运行时 Common Language Runtime
CLS:公共语言规范 Common Language Specification
CTS:通用类型系统 Common Type System
JIT:即时编译器 Just In Time
7、VS易错点:插入覆盖模式问题。