C#学习——简介(第一天)
一、控制台输出
在控制台输出:
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#学习——简介(第一天)的更多相关文章
- SIGAI深度学习第四集 深度学习简介
讲授机器学习面临的挑战.人工特征的局限性.为什么选择神经网络.深度学习的诞生和发展.典型的网络结构.深度学习在机器视觉.语音识别.自然语言处理.推荐系统中的应用 大纲: 机器学习面临的挑战 特征工程的 ...
- RabbitMQ学习总结 第一篇:理论篇
目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...
- 学习KnockOut第一篇之Hello World
学习KnockOut第一篇之Hello World 笔者刚开始学习KnockOut.写的内容就相当于一个学习笔记.且在此处向官网致敬,比较喜欢他们家的Live Example版块,里面有jsFiddl ...
- ActionBarSherlock学习笔记 第一篇——部署
ActionBarSherlock学习笔记 第一篇--部署 ActionBarSherlock是JakeWharton编写的一个开源框架,使用这个框架,可以实现在所有的Android ...
- Java学习记录第一章
学习Java第一章的记录,这一章主要记录的是Java的最基础部分的了解知识,了解Java的特性和开发环境还有Java语言的优缺点. 计算机语言的发展大概过程:机器语言--->汇编语言---> ...
- oracle学习笔记第一天
oracle学习笔记第一天 --oracle学习的第一天 --一.几个基础的关键字 1.select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条 ...
- javascript的ES6学习总结(第一部分)
ES6(ESNext学习总结——第一部分) ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版. ECMA每年6月份,发布一个版本 201 ...
- TensorFlow+Keras 01 人工智能、机器学习、深度学习简介
1 人工智能.机器学习.深度学习的关系 “人工智能” 一词最早是再20世纪50年代提出来的. “ 机器学习 ” 是通过算法,使用大量数据进行训练,训练完成后会产生模型 有监督的学习 supervise ...
- Web基础学习---HTML 第一天
Web基础学习---HTML 第一天 1 HTML标签 2.CSS Web开发基础HTML好吧离开Python几天...如何学好前端?? 多去看别人的网站.多看.多写.多练,(知乎.36Kr.)多练就 ...
- QT学习之第一个程序
QT学习之第一个程序 目录 手动创建主窗口 居中显示 添加窗口图标 显示提示文本 Message Box的应用 手动连接信号与槽 手动创建主窗口 窗口类型 QMainWindow: 可以包含菜单栏.工 ...
随机推荐
- Java试题
1.不使用循环,等比数列输出整型 n.2n.4n.8n--当大于max时,反向输出8n.4n.2n.n. 例如 n=10,max=100. 输出: 10 20 40 80 80 40 20 10 解题 ...
- 华为CloudIDE免费公测,带你出坑带你飞
你的代码仓库上线了吗?是不是有时候遇到这样的问题? 只想浏览一下代码,却发现线上浏览效果不佳,高亮显示什么的都没有.而在桌面端浏览要需要先同步代码,再用桌面端的IDE打开.尤其是使用git的时候,先要 ...
- QuartusII 13.0 PLL IP Core调用及仿真
有一个多月没用用Quartus II了,都快忘了IP 是怎么用调用的了,还好有之前做的笔记,现在整理出来,终于体会到做笔记的好处. 一. QuartusII的pll的调用 打开软件界面 Tool—— ...
- 动态rem与1px边框问题的理解
当我们在项目开发中,拿到设计师的设计图,满怀欣喜的准备按照设计图将页面实现出来的时候,我们通常会遇到这个问题: 如何将页面的内容按照在不同手机屏幕浏览的情况下,比例都是不变的呢?这个时候我们就需要使用 ...
- HDU1027 Ignatius and the Princess II
Problem Description Now our hero finds the door to the BEelzebub feng5166. He opens the door and fin ...
- 进阶篇之纯css+字体实现五角星(半颗星)评分
1.前言 之前写了一篇实现五角星打分效果的demo.这个demo用来实现打分效果绰绰有余,那么有时候我们在统计评分的时候,就会有半颗星或者1/3颗星星这样的那要如何实现呢?来来来,纯字体+css实现! ...
- 亚马逊AWS EC2云实例AMI安装LNMP环境(3)——Mysql5.5
概括:这里选择亚马逊EC2的Linux AMI实例,该Linux服务器是亚马逊预配置的Linux环境,内置多个YUM源,属于亚马逊首推的稳定Linux服务器.默认登录用户名为ec2-user,执行ro ...
- Linux(3)用户和权限管理
用户, 权限管理 Linux中root账号通常用于系统的维护和管理, 它对操作系统的所有部分具有不受限制的访问权限 在Unix/Linux安装过程中, 系统会自动创建许多用户账号, 而这些默认的用户就 ...
- CodeForces 816B Karen and Coffee(前缀和,大量查询)
CodeForces 816B Karen and Coffee(前缀和,大量查询) Description Karen, a coffee aficionado, wants to know the ...
- 暑假OI规划
为了准备11月的NOIP(最好能到550+)暑假要认真的刷题: 1.NOIP的原题 2.USACO历年的GOLD 3.CF的比赛 4.刷几本书 5.带着做bzoj(lydsy) 6.少玩游戏