仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 929|回复: 7
打印 上一主题 下一主题

[学习教程] ASP.NET网站制作之Visual C#2005疾速进门之switch语句

[复制链接]
谁可相欹 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:42:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
数据挖掘有点高深的,主要估计就是使用一些算法提取一些实用的数据。学好数据挖掘的话可以应聘baidu或者google,但是一般人家对算法的要求听高的。你最好还是学点应用型的吧。这种主要是研究型的。visual|疾速进门|语句  某些时分,在嵌套利用if语句时,一切if语句看起来都十分类似,由于它们都在对一个完整不异的表达式举行求值,唯一的区分是每一个if语句都将表达式的了局与一个分歧的值举行对照。比方:

if(day==0)
 dayName="Sunday";
elseif(day==1)
 dayName="Monday";
elseif(day==2)
 dayName="Tuesday";
elseif(day==3)
 ...
else
 dayName="Unknown";
  在这些情形下,一般必要将嵌套的if语句改写为一个switch语句,使程序更无效、更简单懂。

  了解switch语句的语法

  switch语句的语法以下(switch,case和default是关头字):

switch(controllingExpression)
{
 caseconstantExpression:
  statements
  break;
 caseconstantExpression:
  statements
  break;
 ...
 default:
  statements
  break;
}
  controllingExpression(把持表达式)只求值一次。然后,从其constantExpression值即是controllingExpression值的case入手下手,它下方的一切语句城市一向运转,直到碰到一个break为止。随后,switch语句将停止,程序从switch停止年夜括号以后的第一个语句持续实行,并疏忽其他case。

  假设任何一个constantExpression值都不即是controllingExpression的值,就运转可选标签default之下的语句。

  注重假设controllingExpression的值和任何一个case标签都不婚配,同时没有发明一个default标签,程序会跳过全部switch语句,从它的停止年夜括号以后的第一个语句持续实行。

  比方,后面的嵌套if语句能够改写为以下switch语句:

switch(day)
{
 case0:
  dayName="Sunday";
  break;
 case1:
  dayName="Monday";
  break;
 case2:
  dayName="Tuesday";
  break;
 ...
 default:
  dayName="Unknown";
  break;
}
  恪守switch语句划定规矩

  switch语句十分有效,但在利用时必需审慎。所写的任何switch语句都必需遵守以下划定规矩:

  只能针对基础数据范例利用switch,这些范例包含int和string守候。关于其他范例,则必需利用if语句。

  case标签必需是常量表达式(constantExpression),如42大概"42"。假如必要在运转时盘算case标签的值,必需利用if语句。

  case标签必需是唯一性的表达式;也就是说,不同意两个case具有不异的值。

  能够一连写下一系列case标签(两头不克不及间插分外的语句),从而指定本人但愿在多种情形下都运转不异的语句。假如像如许写,那末最初一个case标签以后的代码将合用于一切case。但是,假设一个标签联系关系了一个或多个语句,又没有利用break来跳出,那末实行就不克不及贯串到后续的标签,并且编译器会呈报一个毛病。比方:

switch(trumps)
{
 caseHearts:
 caseDiamonds://同意贯串―标签之间无分外代码
  color="Red";//针对Hearts和Diamonds这两种情形城市实行的代码
  break;
 caseClubs:
  color="Black";
 caseSpades://堕落―标签之间有分外代码,并且没有利用break来跳出
  color="Black";
  break;
}
  注重break语句是用来制止贯串的最多见的体例,但也能够用一个return语句大概一个throw语句来替换它。throw语句的概况将在今后会商。


  禁绝贯串

  因为C#存在禁绝贯串(fallthrough)的划定规矩,以是能够自在地布置一个switch语句的各个地区,而不至于影响其寄义(个中包含default标签,它传统意义上是最初一个标签,但并不是必定云云)。

  C和C++程序员要注重的是,在利用C#编程时,必需为switch语句中的每一个case(包含defaultcase)都供应一个break语句。这个请求是一件功德情,C和C++程序员常常健忘增加break语句,形成实行主动贯串到后续的标签,并形成很难发明的bug。

  但是,假如你真的喜好,也能够在C#中摹拟C++的贯串举动,办法是利用一个goto语句来转到下一个case大概default标签。但这类用法是不保举的,本书也不盘算先容详细细节!

  鄙人面的实习中,我们筹办完成一个程序,它将读取一个字符串中包括的字符,并将每一个字符都映照成它的XML情势。比方,<字符在XML中具有特别寄义(用于组成元素),以是要想准确显现它,就必需转换成"<"。我们盘算写一个switch语句来测试字符的值,并将特别XML字符作为case标签来利用。
  编写switch语句

  1.启动VisualStudio2005。

  2.翻开SwitchStatement项目,它位于MyDocuments文件夹下的MicrosoftPressVisualCSharpStepbyStepChapter4SwitchStatement子文件夹中。

  3.选择“调试”|“入手下手实行(不调试)”。

  VisualStudio2005将天生并运转使用程序。窗体大将呈现高低两个文本框,两头用一个Copy按钮分开。如图所示。




图两个文本框用一个Copy按钮离隔

  4.在上方的文本框中输出以下示例文本:


inRange=(lo<=number)&&(number<=hi);
  5.单击Copy。

  一切内容会逐字复制到下方的文本框中,时代不会对<字符举行转换。

  6.封闭窗体。

  7.在“代码和文本编纂器”窗口中显现Form1.cs的代码,找到copyOne办法。

  copyOne办法卖力将一个字符从上方的文本框复制到下方的文本框。今朝,copyOne办法中包括了一个switch语句,但个中只供应了一个default大节。

  在后续的步骤中,我们将修正这个switch语句,使它能将XML中的特别字符转换成XML映照情势。比方,<字符将转换成字符串"<"。

  8.在switch语句中,于default标签上方增加以下语句:

case<:
 target.Text+="<";
 break;
case>:
 target.Text+=">";
 break;
case&:
 target.Text+="&";
 break;
case":
 target.Text+="&#34;";
 break;
case:
 target.Text+="";
 break;
  注重在最初两个case中,反斜杠()是一个本义符,它会形成后续的字符(即"和)被视为一个间接量,而不是被视为字符串或字符常量的定界符。

  9.选择“调试”|“入手下手实行(不调试)”。

  VisualStudio2005将天生并运转使用程序。

  10.在上方的文本框中输出以下文本:

inRange=(lo<=number)&&(number<=hi);
  11.单击Copy。

  一切内容会复制到下方的文本框中。这一次,每一个字符城市在switch语句中举行XML映照处置。

  12.封闭窗体。在VC.net的版本上,为了让C++运行在.NETFramework中,微软为C++引进了托管,就是托管C++(ManagedC++),这个根本就没有流行起来,自托管C++产生以后就没有收到过好评。
若相依 该用户已被删除
沙发
发表于 2015-1-19 21:20:36 | 只看该作者
我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。
变相怪杰 该用户已被删除
板凳
发表于 2015-1-28 11:32:01 | 只看该作者
主流网站开发语言之PHPHP的全名非常有趣,它是一个巢状的缩写名称——“PHP:HypertextPreprocessor”,打开缩写还是缩写。PHP是一种HTML内嵌式的语言(就像上面讲的ASP那样)。而PHP独特的语法混合了C,Java,Perl以及PHP式的新语法。它可以比CGI或者Perl更快速地执行动态网页。
飘灵儿 该用户已被删除
地板
发表于 2015-2-5 21:18:40 | 只看该作者
Servlet却在响应第一个请求的时候被载入,一旦Servlet被载入,便处于已执行状态。对于以后其他用户的请求,它并不打开进程,而是打开一个线程(Thread),将结果发送给客户。由于线程与线程之间可以通过生成自己的父线程(ParentThread)来实现资源共享,这样就减轻了服务器的负担,所以,JavaServlet可以用来做大规模的应用服务。
精灵巫婆 该用户已被删除
5#
发表于 2015-3-3 23:54:43 | 只看该作者
HTML:当然这是网页最基本的语言,每一个服务器语言都需要它的支持,要学习,这个肯定是开始,不说了.
金色的骷髅 该用户已被删除
6#
发表于 2015-3-11 14:47:49 | 只看该作者
asp.net最主要特性包括:◆编程代码更简洁◆网站可实现的功能更强大◆运行效率高◆节省服务器的动作资源
乐观 该用户已被删除
7#
发表于 2015-3-19 00:25:58 | 只看该作者
关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。
冷月葬花魂 该用户已被删除
8#
发表于 2015-3-26 22:19:59 | 只看该作者
asp.net最主要特性包括:◆编程代码更简洁◆网站可实现的功能更强大◆运行效率高◆节省服务器的动作资源
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 21:58

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表