1.型別轉換
(1)隱式implicit型別轉換
往下展開:
int x = convert.toint32(string);
不丟失精度的轉換:int轉成long,single轉換double等
子類向父類的轉換:
h. 此時成員訪問符,看不到例項中t的方法teach,因為規定引用變數去訪問引用的例項的成員時,只能訪問到變數h的型別所具有的型別。此例中human類具有eat和think方法。
(t)x 顯示型別轉換:
有可能精度丟失甚至發生錯誤的強制型別轉換cast:
covert類:
bool byte,single string uint16 uint32 等
其他型別轉換為string時:
呼叫tostring靜態方法;
parse方法。只能解析格式正確的字串型別。doublex = double.parse(a,b) 這就不行
就會用到tryparse 總會返回乙個bool值,成功為true,轉換失敗為false
運算操作符:
±/ %
整數乘法 乘號兩邊是int uint long ulong
浮點型別single double float
務必留意「數值提公升」
比如var x = 3.04 =12.0 x 是double型
int x= 5;
int y = 4;
int z = x/y ; z=1; 整除需要注意被除數不能為零
浮點型別可以除零 double x =5.0; double y = 0;
正數/0 = 正無窮大 負數/0=負無窮大
double x= (double)5/4 (1.25,是浮點型)
double x = double(5/4) (1.0,是int轉換成的浮點型)
移位操作符:《左移 >>右移
int x = 7; int y= x<<1; 轉換成二進位制進行移位
左移不管是正數還是負數,補進來的都是0;
右移正數最高位補 0 負數最高位補1
關係操作符:<> <= >= (is as)型別檢驗 運算結果都是bool型的
除了比較數值型別還可以比較字元型別 或者字串是否相等
char char1=『a』; 97
char char2 = 『a』; 65
var result = char1> char2 結果為true
邏輯操作符:
位與& 位或| 按位異或^ (不一樣時才會為真)
int x=7; int y=28; int z= x&y; 轉換成二進位制按位求與
條件與&& 條件或|| 一般是來操作bool型別的值的
int x = 5; int y=4; int a = 100; int b= 200;
if(x>y && anull合併
nullable x=null; 可空int型別
int?x = null; 同上
int y = x??0; 如果x是null值,那我用0來代替
條件操作符:?:
賦值和lambda表示式
賦值操作符是從右向左進行
C 入門詳解
表示式的定義 各類表示式概覽 語句的定義 語句詳解 表示式是演算法邏輯的最基本的 最小 單元,表達一定的演算法意圖 因為操作符具有優先順序,所以表示式也就有了優先順序 c 語言中表示式的分類 a value。任何能得到值的運算 操作符和結果型別 a variable 每個變數都有聯合型別 布林型別表...
C 入門 引用詳解
1.引用作為其他變數的別名而存在,因此在一些場合可以代替指標 2.引用相對於指標來說具有更好的可讀性和實用性 3.引用在c 內部實現就是乙個常量指標 const p int a int const a include stdafx.h include include string using nam...
C 入門詳解 2
1.類是現實世界事物的模型 2.類與物件的關係 物件也叫例項,是類經過例項化後得到的記憶體中的實體 依照類,可以建立物件,這就是 例項化 常用new操作符來建立類的例項 現實世界中常稱物件,程式世界中常稱例項,二者無太大區別 注意 飛機和一架飛機,前者是概念,後者是例項,只有例項才有動作才能飛,概念...