• C#学习——简介(第一天)


    一、控制台输出

    在控制台输出:

    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=124 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[] { 1248163264 };
    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

  • 相关阅读:
    【转】backtrack5工具之SQLMAP使用笔记(SQL注入用)
    httpd.conf配置详解
    【转】CodeBlocks+wxWidgets安装教程
    Windows下的Photoshop CS6快捷键
    backtrack常用渗透命令
    Codeforces Round #137 (Div. 2)
    Fedora 17 上安装 AMP 服务(Apache MySQL PHP)
    这几天用linux的体验
    EVO 4G 相机 照相 黑屏
    转载:qsort细节用法,double型的排序我竟然一直用错了~~~
  • 原文地址:https://www.cnblogs.com/pang951189/p/7417765.html
Copyright © 2020-2023  润新知