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 ...
随机推荐
- 磁盘镜像分析工具TSK
磁盘镜像分析工具TSK TSK(The Sleuth Kit)是一款基于命令行的数字取证工具集,用于分析磁盘镜像.该工具支持常见的各种文件系统,如Ext2/Ext3/Ext4.Fat/exFat. ...
- 【codeforces.com/gym/100240 J】
http://codeforces.com/gym/100240 J [分析] 这题我搞了好久才搞出样例的11.76....[期望没学好 然后好不容易弄成分数形式.然后我‘+’没打..[于是爆0... ...
- Linux Shall命令入门
Linux Shall命令入门 ifconfig //查看ip信息 service network start ...
- AHOI2018训练日程(3.10~4.12)
(总计:共90题) 3.10~3.16:17题 3.17~3.23:6题 3.24~3.30:17题 3.31~4.6:21题 4.7~4.12:29题 ZJOI&&FJOI(6题) ...
- JxBrowser概述与简单应用
Q:JxBrowser是什么? JxBrowser是一个跨平台的Java库,允许将基于Google Chromium的Web浏览器组件集成到Java Swing / AWT / JavaFX应用程序中 ...
- 前端UED网站汇总
爱词霸UED团队 MED | 营销展现研究专家 携程UED-携程旅行前端开发团队 支付宝前端开发车间 Taobao UED Team: 淘宝网用户体验团队博客,有关用户体验设计和研究的经验分享. - ...
- Linux技术进阶示意图
- 微信小程序缓存滑动距离,当页面浏览到一定位置,滑动其他页面后返回该页面记录之前的滑动距离
15.微信小程序缓存滑动距离 我们在浏览页面的时候,然后左滑或者右滑到新的页面,等返回此页面,我们希望可以记录上次滑动的距离 虽然这个实现起来并不难,但是会遇到一些坑,因为scroll-view的组件 ...
- XPath教程
XPath 简介 XPath 是一门在 XML 文档中查找信息的语言.XPath 可用来在 XML 文档中对元素和属性进行遍历. XPath 是 W3C XSLT 标准的主要元素,并且 XQuery ...
- JVM -XX: 参数介绍
功能开关: 参数 默认值或限制 说明 参数 默认值 功能 -XX:-AllowUserSignalHandlers 限于Linux和Solaris,默认不启用 允许为java进程安装信号处理器,信号处 ...