码迷,mamicode.com
首页 > Windows程序 > 详细

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

时间:2017-08-23 23:03:20      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:string   ges   逻辑运算   for   mil   左移   c++和java   utc   单行注释   

一、控制台输出

在控制台输出:

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

 

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

标签:string   ges   逻辑运算   for   mil   左移   c++和java   utc   单行注释   

原文地址:http://www.cnblogs.com/pang951189/p/7417765.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!