一、控制台輸出 在控制台輸出: 1 console.writeline(); 2 console.readkey(); 加上後面一句是為了保證彈窗不會一閃而過。 二、註釋 1.單行註釋: 1 //int a=90; 快捷鍵:Ctrl+K+c 2.多行註釋 2 /* int a=12; float b ...
一、控制台輸出
在控制台輸出:
1 console.writeline();
2 console.readkey();
加上後面一句是為了保證彈窗不會一閃而過。
二、註釋
1.單行註釋:
1 //int a=90;
快捷鍵:Ctrl+K+c
2.多行註釋
2 /* int a=12; float b=10.2; */
快捷鍵: /* */
三、數據類型
1.值類型
- datetime 事件類型
- enum 枚舉類型
- struct 結構類型
- int、float、double 數字類型
2.引用類型
- char 字元型(預設值為‘’,如 char a=‘you’)
- 類類型(用戶通過class定義出來的類型)
3.其他類型
(1)整形
- int int32
- short(短整形) int16
- long (長整形) int64
(2)時間類型應用實例
1 //時間類型,獲取當前時間() 2 DateTime p = DateTime.Now; 3 //獲取國際時間 4 DateTime k = DateTime.UtcNow;
4.數據類型的轉換
(1)隱式轉換
1 int num=100; 2 float num1=num;
套路:
- 只能由低精度類型轉換為高精度類型;
- 轉換的兩種數據類型必須一致;
(2)顯示類型轉換
方法1:利用Parse方法轉換
1 string str=“45”; 2 int num=int.parse(str); 3 int strnum=12; 4 float num2=float.parse(strnum);
方法2:利用Convert方法轉換
1 string str=“21.52”; 2 double dou=convert.todouble(str); 3 int num=convert.toint(str);
套路:
- 只能由高精度類型向低精度類型轉換(可能會丟失部分數據,如小數部分)
四、變數
1.作用域
1 int b = 3; 2 int c = 7; 3 if (b > 0) 4 { 5 int k = 100; 6 Console.WriteLine("k"); 7 }
(1)局部變數
上面的k即為局部變數,作用域:從大括弧的開始到大括弧的結束,如果要在大括弧外面使用,需要再次定義變數。
(2)全局變數
上面的b、c即為全局變數,作用域即為整個主函數內部,在任何地方都能使用,不需要再次定義。
(3)static修飾的變數
用static修飾的變數(即為全局變數)沒有作用限制,在任何地方均能使用,但是必須要寫在頂部位置,如下圖:
五、邏輯運算符(按位符)
位操作符是對數據按二進位位進行運算的操作符。位操作是其他很多語言都支持的操作,如C、C++和Java等,C#也不例外支持位操作。註意位操作支持的數據類型是基本數據類型,如byte、short、char、int、long等,C#支持的位操作有如下幾種:
- 按位與 &
- 按位或 |
- 按位取反 ~
- 左移 <<
- 右移 >>
- 異或^
在C#中位操作同C的位操作沒有什麼區別,位操作的速度相對較快,而且如果熟練的話,處理起來也相對方便,特別是在一些許可權等相關的設置中,比如:用1、2、4、8、16、32、64分別代表查看、添加、編輯、修改、刪除、審批等許可權值的時候,如果某個用戶的最終許可權是多種許可權值的疊加,用位操作來判斷是否具有某種許可權是相當方便的了。
例一:
1 using System; 2 /* 4 * 說明:本程式用以說明在C#中如何進行位操作。 6 * */ 7 public class BitAction 8 { 9 public static void Main(string[] args) 10 { 11 int[] power = new int[] { 1, 2, 4, 8, 16, 32, 64 }; 12 int value = 126; 13 /* 14 * 1的二進位形式: 00000001 15 * 2的二進位形式: 00000010 16 * 4的二進位形式: 00000100 17 * 8的二進位形式: 00001000 18 * 16的二進位形式: 00010000 19 * 32的二進位形式: 00100000 20 * 64的二進位形式: 01000000 21 * 126的二進位形式:01111110 22 */ 23 for (int i = 0; i < power.Length; i++) 24 { 25 if ((value & power[i]) != 0) 26 { 27 Console.WriteLine("有power[{0}]={1}所代表的許可權", i, power[i]); 28 } 29 } 30 Console.WriteLine("按位與:126&4={0}", value & 4); 31 Console.WriteLine("按位或:126|4={0}", value | 4); 32 Console.WriteLine("左移:126<<4={0}", value << 4); 33 Console.WriteLine("右移:126>>4={0}", value & 4); 34 Console.WriteLine("異或:126^4={0}", value ^ 4); 35 Console.WriteLine("按位取反:~126={0}", ~value); 36 Console.ReadLine(); 37 } 38 }
結果如下:
例二:
1 //舉例說明 2 using System; 3 class MikeCat 4 { 5 public static void Main() 6 { 7 int a=6&3; 8 Console.WriteLine("a={0}",a); 9 //6的二進位是00000110,3的二進位是00000011,按位與後等於00000010, 即2。 10 11 int b=6|3; 12 Console.WriteLine("b={0}",b); 13 //6的二進位是00000110,3的二進位是00000011,按位或後等於00000111,即7 14 15 int c=~6; 16 Console.WriteLine("c={0}",c); 17 //6的二進位是00000110,按位取反後是11111001即-7 18 19 int d=6^3; 20 Console.WriteLine("d={0}",d); 21 //6的二進位是00000110,3的二進位是00000011,按位異或後等於00000101,即5 22 23 int e=6<<3; 24 Console.WriteLine("e={0}",e); 25 //6的二進位是00000110,左移三位後等於00101000,即48 26 27 int f=6>>2; 28 Console.WriteLine("f={0}",f); 29 //6的二進位是00000110,右移二位等於00000001,即1 30 } 31 }
按位符參考網址:http://www.cnblogs.com/yiki/archive/2008/03/05/1091378.html