一、控制台输出

在控制台输出:

console.writeline();

console.readkey();

加上后面一句是为了保证弹窗不会一闪而过。

二、注释

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)时间类型应用实例

                     //时间类型,获取当前时间()
DateTime p = DateTime.Now;
//获取国际时间
DateTime k = DateTime.UtcNow;

4.数据类型的转换

(1)隐式转换

 int num=;
float num1=num;

套路:

  • 只能由低精度类型转换为高精度类型;
  • 转换的两种数据类型必须一致;

(2)显示类型转换

方法1:利用Parse方法转换

 string str=“”;
int num=int.parse(str);
int strnum=;
float num2=float.parse(strnum);

方法2:利用Convert方法转换

 string str=“21.52”;
double dou=convert.todouble(str);
int num=convert.toint(str);

套路:

  • 只能由高精度类型向低精度类型转换(可能会丢失部分数据,如小数部分)

四、变量

1.作用域

             int b = ;
int c = ;
if (b > )
{
int k = ;
Console.WriteLine("k");
}

(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分别代表查看、添加、编辑、修改、删除、审批等权限值的时候,如果某个用户的最终权限是多种权限值的叠加,用位操作来判断是否具有某种权限是相当方便的了。

例一:

 using System;
/*  * 说明:本程序用以说明在C#中如何进行位操作。  * */
public class BitAction
{
    public static void Main(string[] args)
    {
        int[] power = new int[] { , , , , , ,  };
        int value = ;
        /*
         * 1的二进制形式:  00000001
         * 2的二进制形式:  00000010
         * 4的二进制形式:  00000100
         * 8的二进制形式:  00001000
         * 16的二进制形式: 00010000
         * 32的二进制形式: 00100000
         * 64的二进制形式: 01000000
         * 126的二进制形式:01111110
         */
        for (int i = ; i < power.Length; i++)
        {
            if ((value & power[i]) != )
            {
                Console.WriteLine("有power[{0}]={1}所代表的权限", i, power[i]);
            }
        }
        Console.WriteLine("按位与:126&4={0}", value & );
        Console.WriteLine("按位或:126|4={0}", value | );
        Console.WriteLine("左移:126<<4={0}", value << );
        Console.WriteLine("右移:126>>4={0}", value & );
        Console.WriteLine("异或:126^4={0}", value ^ );
        Console.WriteLine("按位取反:~126={0}", ~value);
        Console.ReadLine();
    }
}

结果如下:

例二:

 //举例说明
using System;
class MikeCat
{
public static void Main()
{
int a=&;
Console.WriteLine("a={0}",a);
//6的二进制是00000110,3的二进制是00000011,按位与后等于00000010,  即2。
    
int b=|;
Console.WriteLine("b={0}",b);
//6的二进制是00000110,3的二进制是00000011,按位或后等于00000111,即7 int c=~;
Console.WriteLine("c={0}",c);
//6的二进制是00000110,按位取反后是11111001即-7 int d=^;
Console.WriteLine("d={0}",d);
//6的二进制是00000110,3的二进制是00000011,按位异或后等于00000101,即5 int e=<<;
Console.WriteLine("e={0}",e);
//6的二进制是00000110,左移三位后等于00101000,即48 int f=>>;
Console.WriteLine("f={0}",f);
//6的二进制是00000110,右移二位等于00000001,即1
  }

按位符参考网址:http://www.cnblogs.com/yiki/archive/2008/03/05/1091378.html

C#学习——简介(第一天)的更多相关文章

  1. SIGAI深度学习第四集 深度学习简介

    讲授机器学习面临的挑战.人工特征的局限性.为什么选择神经网络.深度学习的诞生和发展.典型的网络结构.深度学习在机器视觉.语音识别.自然语言处理.推荐系统中的应用 大纲: 机器学习面临的挑战 特征工程的 ...

  2. RabbitMQ学习总结 第一篇:理论篇

    目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...

  3. 学习KnockOut第一篇之Hello World

    学习KnockOut第一篇之Hello World 笔者刚开始学习KnockOut.写的内容就相当于一个学习笔记.且在此处向官网致敬,比较喜欢他们家的Live Example版块,里面有jsFiddl ...

  4. ActionBarSherlock学习笔记 第一篇——部署

    ActionBarSherlock学习笔记 第一篇--部署          ActionBarSherlock是JakeWharton编写的一个开源框架,使用这个框架,可以实现在所有的Android ...

  5. Java学习记录第一章

    学习Java第一章的记录,这一章主要记录的是Java的最基础部分的了解知识,了解Java的特性和开发环境还有Java语言的优缺点. 计算机语言的发展大概过程:机器语言--->汇编语言---> ...

  6. oracle学习笔记第一天

    oracle学习笔记第一天 --oracle学习的第一天 --一.几个基础的关键字   1.select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条 ...

  7. javascript的ES6学习总结(第一部分)

    ES6(ESNext学习总结——第一部分) ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版. ECMA每年6月份,发布一个版本 201 ...

  8. TensorFlow+Keras 01 人工智能、机器学习、深度学习简介

    1 人工智能.机器学习.深度学习的关系 “人工智能” 一词最早是再20世纪50年代提出来的. “ 机器学习 ” 是通过算法,使用大量数据进行训练,训练完成后会产生模型 有监督的学习 supervise ...

  9. Web基础学习---HTML 第一天

    Web基础学习---HTML 第一天 1 HTML标签 2.CSS Web开发基础HTML好吧离开Python几天...如何学好前端?? 多去看别人的网站.多看.多写.多练,(知乎.36Kr.)多练就 ...

  10. QT学习之第一个程序

    QT学习之第一个程序 目录 手动创建主窗口 居中显示 添加窗口图标 显示提示文本 Message Box的应用 手动连接信号与槽 手动创建主窗口 窗口类型 QMainWindow: 可以包含菜单栏.工 ...

随机推荐

  1. MetaWebBlogApi开发经验

    背景 花了一天的时间为某笔记软件开发了一款插件,能够发布笔记到博客园,本文就是记录开发时遇到的问题和解决方案,希望有大佬能开发出更好用的博客编辑器. 为什么要开发? 现在有很多开源的建站工具hexo, ...

  2. Python collections模块总结

    Python collections模块总结 除了我们使用的那些基础的数据结构,还有包括其它的一些模块提供的数据结构,有时甚至比基础的数据结构还要好用. collections ChainMap 这是 ...

  3. firefox插件开发及源码下载

    在个别情况下,由于数据量巨大,造成显示性能的明显下降,此时使用c++开发firefox插件,可以提高用户使用体验. test.html: 在插件中,我们导出3个函数给js:AddStr, Pause, ...

  4. poj_2104: K-th Number 【主席树】

    题目链接 学习了一下主席树,感觉具体算法思路不大好讲.. 大概是先建个空线段树,然后类似于递推,每一个都在前一个"历史版本"的基础上建立一个新的"历史版本",每 ...

  5. iOS App签名的原理

    前言 相信很多同学对于iOS的真机调试,App的打包发布等过程中的各种证书.Provisioning Profile. CertificateSigningRequest.p12的概念是模糊的,导致在 ...

  6. Docker 中的一些概念

    笔者使用 Mac 系统玩的,所以会更多阐述 Mac 上使用的一些东西. 在安装之前有些 Docker 相关的概念需要了解一下,以便我们更好了解 Docker. 简单来说,安装 Docker 之后,会在 ...

  7. js中常用的日期总结

    js开发中经常用到日期,这里总结一下: /** * 获取当前日期 * 格式:2017-07-31 13:45:14 */ function getNowFormatDate() { var date ...

  8. git相关的学习资料

    1, 一个比较详细的git使用说明: http://blog.jobbole.com/78960/

  9. html5图片上传时IOS和Android均显示摄像头拍照和图片选择

    最近在做信开发时,发现<input type="file" />在IOS中可以拍照或从照片图库选择,而Android系统则显示资源管理器,无拍照选项,网上查找资料,改为 ...

  10. 花了一年时间开发的三维弯管机交互式转档软件(三维管子模型UG,SOLIDWORK,PRO/E文件转成YBC)

    在弯管机加工中,由管子模型生成可直接进行弯管加工的YBC数据可以大大提高弯管编程过程.传统的做法是先用dxf数据文件(用autocad绘制管子的轴心线数据)转出XYZ数据,然后由XYZ数据转成YBC数 ...