JUST DO IT ~

          我只想當(dāng)個(gè)程序員

          cast 轉(zhuǎn)換類型 C# as () 區(qū)別 -----------更優(yōu)雅的類型轉(zhuǎn)換

          () java 中來的類型轉(zhuǎn)換 . 轉(zhuǎn)換不成 就爆發(fā)異常..

          文明人  as

          as 運(yùn)算符類似于強(qiáng)制轉(zhuǎn)換操作。但是,如果無法進(jìn)行轉(zhuǎn)換,則 as 返回 null 而非引發(fā)異常。請看下面的表達(dá)式:




          比較強(qiáng)硬   ,,,, 一旦失敗可能是程序終止,但是有時(shí)候是必要....
          core component is  error   we must be stop it .

          try{

              = () 強(qiáng)轉(zhuǎn) 

          }catch (){

          }

          如果是 可選的 組件 出了問題
          if   an option   component is  error ,we can  backup  method ....

          string s = someObject as string;
          if (s != null)
          {
          // someObject is a string.
          }




             例子來自 c# msdn 規(guī)范




          // cs_keyword_as.cs
          // The as operator.
          using System;
          class Class1
          {
          }

          class Class2
          {
          }

          class MainClass
          {
              
          static void Main()
              {
                  
          object[] objArray = new object[6];
                  objArray[
          0= new Class1();
                  objArray[
          1= new Class2();
                  objArray[
          2= "hello";
                  objArray[
          3= 123;
                  objArray[
          4= 123.4;
                  objArray[
          5= null;

                  
          for (int i = 0; i < objArray.Length; ++i)
                  {
                      
          string s = objArray[i] as string;
                      Console.Write(
          "{0}:", i);
                      
          if (s != null)
                      {
                          Console.WriteLine(
          "'" + s + "'");
                      }
                      
          else
                      {
                          Console.WriteLine(
          "not a string");
                      }
                  }
              }
          }





          另附
          來自csdn


          第一種:Convert.ToInt32(stringVal)
          第二種:(string)intVal
          ----------------------------------------------
          1.把stringVal強(qiáng)制轉(zhuǎn)換為一個(gè)int型數(shù)據(jù),此方法為Convert類的方法,不允許被重載。
          2.把intVal轉(zhuǎn)換為string型返回一個(gè)string類型對象。

          在基本數(shù)據(jù)類型當(dāng)中,這兩種表達(dá)方式將執(zhí)行一致的操作返回一致的結(jié)果集
          他們的主要區(qū)別主要在自定義類型當(dāng)中,Convert.ToInt32()這種方式不能適用于自定義類型
          而(string)這種方式通過在具體自定義類型中的可以通過改寫其方法使用

          posted on 2008-08-31 09:27 小高 閱讀(1676) 評論(0)  編輯  收藏 所屬分類: DotNet

          導(dǎo)航

          <2008年8月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          統(tǒng)計(jì)

          常用鏈接

          留言簿(3)

          隨筆分類(352)

          收藏夾(19)

          關(guān)注的blog

          手冊

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 大埔县| 绩溪县| 陆川县| 岱山县| 石台县| 乐亭县| 肇庆市| 柳林县| 望城县| 娄烦县| 梁山县| 潼南县| 左贡县| 库尔勒市| 邹城市| 盐边县| 桂林市| 凭祥市| 莱阳市| 集贤县| 木兰县| 曲麻莱县| 马关县| 汝阳县| 广丰县| 正定县| 屏东市| 琼结县| 新民市| 吴堡县| 江山市| 南溪县| 邮箱| 卫辉市| 龙州县| 丁青县| 祥云县| 南郑县| 冀州市| 达拉特旗| 开封县|