小知識(一)
var:
初始化必須有賦值,var i;(錯的)。
var類型的物件運作過程中不允許再更改類型。 (如:var i=1; i="hello!" 會出錯)
var只宣告局部變數。
dynamic:
初始化時可以不賦值。
dynamic類型的物件運行過程中可以給該類型。 (如:dynamic i=1; i="hello!" 不出錯)
可宣告為全域變數。
VAR和DYNAMIC:一般當不確定變數類型時使用。
decimal:
高精度小數,範圍:1.0*10^-28到7.9*10^28,精度28位。一般用於表示money。 float/double精度7/15位,用這float/double兩個類型表示貨幣時它會幫你"抹零"。
decimal預設值:0.0M
float預設值:0.0F
double ='d';
char c ='x0068'; 十六進位
char c='u0068'; Unicode表示
char c=(char)68; 整形轉換char。
預設值:'x0000'
八進位和十六進位:
C#中整形只用10進位表示,以8進位格式說明符"o"或"O"和16進位格式說明符是"x"或"X"編譯會出錯,(如:int i = o73;出錯)。
當需要輸出8進位或16進位時使用i.ToString("x")即可。
顯示2進位WriteLine(Convert.ToString(231,2));
輸出字串的左邊或是右邊填滿空格實現右對齊或左對齊。
Parse:
如:int.parse(string); double.parse(string); decimal.parse(string)等。
var和dycimal沒有parse方法。
注意:當16進位數字的字串轉換為int時用Parse(string,System.Globalization.NumberStyle)方法,第二個枚舉參數選HexNumber即可。
那2進位字串和8進位字串怎麼解析成int呢?目前還不知道呢……哪位大師說一下? ? ?
Encoding:
字串與位元組陣列之間的轉換。 System.Text.Encoding類別
byte[] ← GetBytes(string)方法,將字串轉換為位元組陣列。
string ← GetString(byte[])方法,將位元組陣列轉換為字串。
Encoding屬性:
Encoding.Default 取得系統的目前ANSI代碼頁的編碼
Encoding.UTF8取得UTF8編碼格式
用戶自訂資料類型。 enum枚舉的值從1開始,除了自訂。用逗號","隔開,可賦值整形值。
object ← Enum.parse(type enumType,string value);
如:
color col=(color)Enum.parse(typeof(color),"white");
enum e { }
struct結構:
結構是值類型,在堆疊(stack)上分配位址
结构和类都可以继承接口。
结构不能被集成,类可以。
结构没有析构函数,类有。
struct s { }
以上就是C#拾遗之小知识(一)的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!