c#里有as关键字么?

cvinx 2003-07-03 04:00:25
在一段c#代码里找到
NameValueCollection configSettings = ConfigurationSettings.GetConfig(configSection) as NameValueCollection

里面有个as关键字,查了帮助但没找到,记得只有vb里面有as关键字
...全文
129 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
cvinx 2003-07-07
  • 打赏
  • 举报
回复
非常感谢,结贴
duying 2003-07-03
  • 打赏
  • 举报
回复
有,你可以看看<c#高级编程>,记得里面好像有一节专门介绍这个as关键字的
CaiDaoLi 2003-07-03
  • 打赏
  • 举报
回复
C#中当然有了,作用是类型转换,如果转换失败则返回null
chinchy 2003-07-03
  • 打赏
  • 举报
回复
有的
===================================
as 运算符用于执行可兼容类型之间的转换。as 运算符用在以下形式的表达式中:

expression as type
此处:

expression
引用类型的表达式。
type
引用类型。
备注
as 运算符类似于类型转换,所不同的是,当转换失败时,as 运算符将产生空,而不是引发异常。在形式上,这种形式的表达式:

expression as type
等效于:

expression is type ? (type)expression : (type)null
只是 expression 只被计算一次。

示例
// cs_keyword_as.cs
// The as operator
using System;
class MyClass1
{
}

class MyClass2
{
}

public class IsTest
{
public static void Main()
{
object [] myObjects = new object[6];
myObjects[0] = new MyClass1();
myObjects[1] = new MyClass2();
myObjects[2] = "hello";
myObjects[3] = 123;
myObjects[4] = 123.4;
myObjects[5] = null;

for (int i=0; i<myObjects.Length; ++i)
{
string s = myObjects[i] as string;
Console.Write ("{0}:", i);
if (s != null)
Console.WriteLine ( "'" + s + "'" );
else
Console.WriteLine ( "not a string" );
}
}
}
输出
0:not a string
1:not a string
2:'hello'
3:not a string
4:not a string
5:not a string
cvinx 2003-07-03
  • 打赏
  • 举报
回复
那上面豫剧是怎么解释,在aspnetforum里面找到的,能够正常编译运行
zwztu 2003-07-03
  • 打赏
  • 举报
回复
没有

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧