C#中的資料類型

來源:互聯網
上載者:User

在C++中,bool類型的值可轉換為int類型的值,false等效於零值,而true等效於非零值。但是在C#語言中,不存在bool類型與其他類型之間的相互轉換。例如,下列if語句在C#中是非法的,而在C++中則是合法的:

int x = 123;

if (x)   // 注意:在C#中此語句是錯誤的

{

    printf("x is 非零值.");

}

若要測試int類型的變數,必須將該變數與一個值(例如零)進行顯式比較,如下所示:

int x = 123;

if (x != 0)   // C#的判斷方式

{

    Console.Write("The value of x is nonzero.");

}

功能說明:從鍵盤輸入一個字元,然後程式檢查輸入的字元是否是一個字母。如果輸入的字元是字母,則程式檢查是大寫還是小寫。這些檢查是使用IsLetter和IsLower(兩者均返回bool類型)來執行的。

using System;

public class BoolTest1 

{

    static void Main() 

    {

        Console.Write("請輸入一個字母: "); 

        char c = (char)Console.Read();

        if (Char.IsLower(c))

        {

                Console.WriteLine("這個字元是小寫字母.");

        }

        else

        {

                Console.WriteLine("這個字元是大寫字母.");

        }

    }

}

存在從byte到short、ushort、int、uint、long、ulong、float、double或decimal的預定義隱式轉換。

注意

不能將更大儲存範圍的非文本數實值型別隱式轉換為byte。

如:byte z = x + y;

以上的指派陳述式將產生一個編譯錯誤,原因是賦值運算子右側的算術運算式在預設情況下的計算結果為int類型。

若要解決此問題,請使用強制轉換:

byte z = (byte)(x + y);

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.