爱悠闲 > C#学习第三天 类型转换和随机数

C#学习第三天 类型转换和随机数

分类: C#学习前期  |  作者: tufeiax 相关  |  发布日期 : 2015-11-28  |  热度 : 1195°

1. Convert类型转换

两个类型相兼容的变量,可以使用显示类型转换或者饮食类型转换,但是如果两个类型不兼容的变量,比如string和int或string和double,

这个时候我们可以使用一个叫Convert的转换工厂进行转换。

条件是string的内容必须可用.否则会出现异常(语法没错)

int number = Convert.ToInt32("123abc"); 相等于 int number = int.Parse("123abc") ;    //异常

Conver.ToInt32 = int.Parse  

在未确认字符串为有效字符串时,为了避免程序出现异常,可用 int.TryParse:

int number = 0;   string str = 123;

bool b = int.TryParse(str,out number);  //如有效,返回true,并且将str转成int,赋值给number,否则返回false,赋值失败

以上结果为b=true; number = 123.

str = 123abc  则结果为b= false, number = 0;


2. 异常捕获

异常概念:语法上没有错误,但在程序运行过程中,由于某些原因程序出现了错误,不能再正常的运行.

比如上面的Convert.ToInt(str);  如果str不能转为int类型时,程序会出现异常并中断,这种情况下可使用try ---catch来进行异常捕获

语法:执行过程--如果try中的代码没有异常,选择执行try中的代码,catch的代码不会被执行,如果有异常,直接跳到catch中的代码执行

try { 可能出现异常的代码; ......}

catch { 出现异常时执行的代码}

例如:

try{

int number = Convert.ToInt32(Console.ReadLine());

}

catch{

Console.WriteLine("输入的内容不能转换成数字");

}


3.程序调试

1)写完一段程序后,想看一下这段程序的执行过程

2)当写完程序后,得出的结果不是预期的样子

调试方法:

1)F11   逐语句调试 (单步调试)----

按完F11后,黄色一行为即将执行的代码,但还未执行;此时可打开”监视“查看变量的值,

打开方法:调试---> 窗口--->监视--->监视1,然后输入需要查看的变量的值

2)F10  逐过程调试   : 遇到函数时,不进入函数,直接跳过去

3)断点调试 :单步调试只能从最程序入口逐步调试,打断点调试可以将程序运行至断点处暂停,然后再进行单步调试(F11)

打断点方法:在需要打断点的行首的灰色的地方双击


4.循环语句

未知循环次数时使用while循环,已知循环次数时,使用for循环简便

while循环用法:while(条件语句){  循环体;条件改变;}

for循环用法:

for(表达式1;表达式2;表达式3) { 循环体;}

for循环输入快捷方法

输入for之后双击tab键,即出现for循环的整体框架:for(int i = 0; i<length; i++){}

倒序---输入forr双击tab键:for(int i = length; i>0; i--){}

执行过程

1)执行表达式1,声明一个循环变量来记录循环的次数,并赋初值;

2)执行表达式2,判断循环条件是否成立;

3)如表达式2返回true,则执行循环体;

4)循环体完成后,执行表达式3,然后回到步骤2

5)直到表达式2返回false,跳出循环


5.产生随机数

1)创建能够产生随机数的对象

Random r = new Random(); //因为耗费内存,应该放在循环外面

2)  调用此对象的方法来获取随机数

int number = r.Next(1,10);   //取值为1-9的随机数,返回给number