C#基础视频教程2 常见数据类型和属性方法
记住只要掌握常用的几种数据类型即可(比如Single就很少用了,要用浮点数一般就用Double,现在的计算机内存已经大到不需要你去考虑优化什么了)
比如仅仅是整形就有9种,实际上我们只需要知道int和char类型即可(很少用到byte,long,剩下的基本用不到)
- C# 支持 9 种整型:sbyte、byte、short、ushort、int、uint、long、ulong 和 char。整型具有以下所列的大小和取值范围:
- sbyte 类型表示有符号 8 位整数,其值介于 -128 和 127 之间。
- byte 类型表示无符号 8 位整数,其值介于 0 和 255 之间。
- short 类型表示有符号 16 位整数,其值介于 -32768 和 32767 之间。
- ushort 类型表示无符号 16 位整数,其值介于 0 和 65535 之间。
- int 类型表示有符号 32 位整数,其值介于 -2147483648 和 2147483647 之间。
- uint 类型表示无符号 32 位整数,其值介于 0 和 4294967295 之间。
- long 类型表示有符号 64 位整数,其值介于 -9223372036854775808 和 9223372036854775807 之间。
- ulong 类型表示无符号 64 位整数,其值介于 0 和 18446744073709551615 之间。
- char 类型表示无符号 16 位整数,其值介于 0 和 65535 之间。char 类型的可能值集与 Unicode 字符集相对应。虽然 char 的表示形式与 ushort 相同,但是可以对一种类型进行的所有计算并非都可以对另一种类型执行。
不要去死记硬背每个数据的表示范围,没有意义(想知道随时可以知道,一般不会超过变量范围)

所有类型都可以使用.ToString转成字符串来输出(当然如果本身就是字符串就不需要转成字符串了),可以在双引号里面加0.00表示保留两位小数,当然0.0就是表示保留一位小数

所有类型都可以使用Convert.To来转到你要的格式,而且要用好C#的自动提示(这一点就是C#的高效所在,当你想要转格式的时候,只要记住Convert.To,而且To的目标也只要记住非常有限的几种)

字符串的处理是重要的,常见的操作比如查找和替换,分割到数组都是需要掌握的(目前只要了解简单用法,我们后面会结合具体实例让大家用自定义的方法学会)

强制转换就是在变量前面加一个括号,括号里面放强制转换成的类型(比如把double类型强制转换成int就丢失了小数点后面的东西)

数组是非常重要的,至少要掌握一维数组和二维数组的定义和使用(不要学花哨的定义方法,比如定义的时候给数组元素赋初始值之类的,没有实用价值),对于比较多的元素的输出,可以放入剪贴板(除了MessageBox)

可变数组List,一般不常用(例如在导入一堆用户数据的时候,我们并不知道数据的具体数量,这个时候要用可变数组)

指针Point,一般不常用(例如在做一些专业的图像处理的时候,使用指针访问每个像素的RGB值能显著提高效率,新手不需要掌握)。

结构体Struct,一般不常用(例如在自定义封装类的时候会用到,你可以定义一个学生的结构体,包括了学生的姓名,性别,年龄,各科成绩,使用结构体将让对象的属性更加清晰)

类Class,非常重要的概念(我们在后面的课程中会结合具体实例来教学,能够真正区分是否面向对象的,是否代码可扩展的就是看编程人员能否自己组织类,掌握类,虽然做简单任务的时候写成类还麻烦,但是越往后对比越显著,使用面向对象的类的写法会越来越轻松,而使用以往VB6.0,C语言写法会越来越吃力),在这个例子中,我们只是简单区分了类和结构体在定义和赋值上的区别(是否需要new,是否会一改全改),实际上并不建议直接让结构体或者类的A=B,更加详细的说明会在后面列举。

定时器(最简单的多线程方法,拖一个控件改改参数就完事了),这里我们还顺带介绍了全局变量的概念(定义在某个方法外面的是全局变量,定义在某个方法里面的是局部变量,全局变量可以随时访问)

线程(自己写Thread的方法,目前我们只介绍最简单的一种方法,其实线程还有很多内容需要掌握,比如带参数的新建线程,多个子线程的传递值问题,线程的暂停,恢复,终止等等,但是还是跟前面强调的一样,真正要掌握都是要结合具体实例,大部分简单程序没必要去掌握这些)

最后,要学会使用try_catch语句和if(false)来提高排除错误的效率,有一些错误并不会给出提示,需要不断的提高编程水平和经验(把没问题的都注释掉不运行,只运行可能有问题的部分,或者把中间结果输出出来,到记事本上去仔细分析跟预期的是否一致)

总结:按照常规,还有很多比如枚举类型,比如委托和事件,接口,抽象,虚函数等等可以介绍,然而那些都不是必须的(也就是说你可能用了五年也用不到接口interface,除非你在一个非常专业团队,每个人的分工任务明确,比如做一个牛逼的游戏。但是实际上工控行业大部分都是一个人包揽全部活,根本谈不上封装的多么好的类,对象。你的重点往往在通信,算法,效率上,而不是在程序的结构上),而且个人认为把这些弄进来反而影响注意力。初学者应该用最快的时间掌握那些最常用的东西(本案例所列举的基本都是以后会经常用到的)。讲解概念是枯燥无味的,也不利于提高学习兴趣。从下一节开始会结合小案例把几个知识点串起来,如果你能自己动手把三五个小案例都搞定,就说明你已经入门了(本节演示的东西都要自己手敲出来,看懂不代表你真的会)。
更多教学视频和资料下载,欢迎关注以下信息:
我的优酷空间:
http://i.youku.com/acetaohai123

我的在线论坛:
http://csrobot.gz01.bdysite.com/

问题交流:
QQ:910358960
C#基础视频教程2 常见数据类型和属性方法的更多相关文章
- Java基础语法04面向对象上-类-属性-方法-可变参数-重载-递归-对象数组
类 面向对象是一种思想,一般指将事务的属性与方法抽出总结为模板(类/class),处理事务时通过类创建/new出对象由对象的功能/方法去完成所要计算处理的事情. 面向过程:POP:以过程,步骤为主,考 ...
- NDK学习笔记-JNI数据类型和属性方法的访问
JNI实现了C/C++与Java的相互访问,那么这篇文章就从C/C++访问Java开始说起 native函数说明 每个native函数,都至少有两个参数(JNIEnv *和jclass或jobject ...
- C#基础视频教程3.3 常见控件类型和使用方法
前面介绍了微软的控件,也介绍了几个第三方控件,那么这些控件是如何做出来的?即便我们自己不做控件,也至少要理解控件的原理. 如果要创建一个自定义控件,首先新建一个C#下面的Windows窗体控件库 ...
- WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭
在我们开发WCF项目的时候,常常会碰到一些莫名其妙的错误,有时候如果根据它的错误提示信息,一般很难定位到具体的问题所在,而由于WCF服务的特殊性,调试起来也不是那么方便,因此往往会花费不少时间来进行跟 ...
- JavaScript基础视频教程总结(081-090章)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- JavaScript基础视频教程总结(071-080章)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- JavaScript基础视频教程总结(051-060章)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- JavaScript基础视频教程总结(001-010章)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- JavaScript基础视频教程总结(041-050章)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
随机推荐
- Jenkins多选项框使用
多选框的使用场景还是挺多的,比如发布多个服务,或者选择哪些服务器 想要使用多选项,则需要安装插件extend choice parameter,然后在项目中配置参数化构建过程 配置完上面,我们就可以在 ...
- springMVC项目,存中文到mysql是乱码(?????)
问题:jdbc连接mysql数据库,web页面输入的中文,存到数据库却变成"????”: 但是数据库中的中文却能够正常读出并在页面显示 mysql中运行 :SHOW VARIABLES LI ...
- WSDL语法
<什么是WSDL语言> WSDL(网络服务描述语言,Web Services Description Language)是一门基于 XML 的语言,用于描述 Web Services 以及 ...
- PHP视频教程 字符串处理函数(二)
1.字符串输出:echo()输出一个或者多个字符串 2.截取 chunk_split(); 3.
- Hibernate 基于外键的单项一对一关联映射
在开发过程中很多时候会用到表与表之间一对一的关联关系,本文简单介绍在Hibernate4中单项一对一的关联映射. 1.设计表结构 2.创建Person对象 3.创建IdCard对象 4.写hbm.xm ...
- 【BZOJ】3697: 采药人的路径
3697: 采药人的路径 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1718 Solved: 602[Submit][Status][Discu ...
- C# -- 学习笔记之基础篇
由于要做一个系统,需要用到搜索引擎开发的很多知识点.对于开发语言的选择,我一般不是擅长什么才选择什么的,而是通过对比之后,考虑开发时间和难易程度来选择.尽管现在的开发经验还不足,也只能凭借自己弱弱的判 ...
- Python 实现简单的感知机算法
感知机 随机生成一些点和一条原始直线,然后用感知机算法来生成一条直线进行分类,比较差别 导入包并设定画图尺寸 import numpy as np import matplotlib.pyplot a ...
- 微信小程序背景音频播放分享功能
如果正常背景音频播放的话,只能跳转到自己对应的微信小程序,无法分享朋友圈,我们需要设置分享朋友圈,需要调用一个API 音频背景播放 注意:背景播放在锁屏后播放只支持IOS端,安卓端虽然可以播放,但是锁 ...
- C#利用NPOI在同一个Excel文件中创建多个sheet
借用NPOI来实现,要在同一Excel文件中创建多个sheet,只需要在同一个workbook中创建多个sheet即可.要注意的是,sheet的名字一定不能重复.下面是实现的代码: private v ...