第二章 C#基本数据类型
第一节 1-关键字和标识符
关键字:会不同颜色显示
标示符:由字母、中文、数字、下划线组成,不能以数字开头,不能是关键字,不能含有特殊符号,如:@,$
思考:下列哪些是合法的标识符?a1、1a、a_b、_1a、@c5、a$b
变量命名法:
驼峰命名法:每个单词第一个字母大写,如Console.WriteLine
第二节2-变量的声明和赋值、变量的作用域
1.所有数据都存在内存中,
2.局部变量在使用前必须赋值
3.变量的作用域,只在{}里面起作用
第三节3-数值类型简介和显式隐式转换
数据类型:
1.数值类型,默认定义时是int和double
数据类型 占用字节 取值范围
byte(字节) 1 0~255 代表一个8位进制,也就是一个字节
short(短整型) 2
int(整型) 4
long(长整型) 8
float(单精度浮点数) 4
double(双精度浮点数) 8
2.怎样理解字节?字节越大,表示的范围就越大,精度就越高
3.类型转换
隐式类型转换:程序内部自动转换,只能将小范围的数据类型转换为大范围的数据类型,编译的时候只看类型
byte b1 = 5;
int i2 = b1;
显式类型转换:也叫强制类型转换
int i1 = 3;
byte b2 = (byte)i1;
第四节4-float和double的声明类型转换等问题
1.小数数据类型
定义double数据类型时可以不带d(D),但定义float时,一定要在后面加f(F),因定义小数类型时,默认是double
2.小数类型计算问题
两个数字相除,默认是整数,可以在后面加小数点或加f和d
第五节5-String的声明主要是转义符的问题
一.常用数据类型
1.string(String),定义时将字符串用双引号括起来
输出特殊字符
"\"表示后面的字符有特殊含义,两个"\\"代表输出一个"\"
要想输出a"b,可以在"前面加一个\,如a\"b
要想输出a\n,如:a\\nb
定义一个路径时,可以在路径前面加@,如@c:\1\1.txt,@告诉编译器\只代表一个普通的\,@只对\起作用
第六节6-char、bool以及string和数值类型的转换
1.char,字符类型,有且只有一个字符,用单引号括起来
char ch1 = '\n';
char ch2 = '\\';
2.bool类型,只有true和bool
3.获得某数据的最大与最小值:
数据类型.MaxValue与数据类型.MinValue
如:int.MaxValue
4.数字转字符串,用Convert.ToString(),Convert是转换的意思
如:
int i = 10;
string s1 = Convert.ToString(i); //建议使用这种
string s2 = i.ToString(); //当i为null时会出错
5.字符串转数字,用Convert.ToInt32()
如:
string s = "123";
int i = Convert.ToInt32(s);
第七节7-CTS(大写String和小写string区别是什么?
1.CTS
Int32 i1 = 32;
int i2 = 32;
Console.WriteLine(i1);
Console.WriteLine(i2);
Console.ReadKey();
第八节8-枚举类型
定义枚举用enum关键字
如:
enum Dir
{
ont,two,three,fore
}
使用时:Dir d = Dir.fore;
第九节9-基本运算符(余、自增自减、字符串和其他类型相加)
1.基本运算符
+号运算符,字符串与数字相加时,是将数字转换为字符串(Convert.ToString)再连接
"hello"+5+5,结果是hello55,先将hello与5相连,再用hello5与5相连
5+5+"hello",结果是10hello,先运算5+5=10,再用10与hello相连
"hello"+(5+5),结果是hello10,先运算括号里的值5+5=10,再用hello与10相连
第十节10-赋值运算符和实现加法计算器
int i = 10;
if (i = 10) //C#中if表达式只能是bool,不能是int或其它数据类型,这里语法上错误
{
...
}
但下面的语句是可以运行的,只要if表达式里面是bool类型即可
bool b = false;
if (b = true) //当if判断语句中成立时就执行下面的代码
{
Console.WriteLine(10);
}
第十一节11-变量的复制传递和交换两个变量的值
1.值类型的赋值(数值类型)、boolean,char,枚举,结构体等是复制传值
int i=10;
int j=i;
i=20;
2.作业:
不用第三方变量交换两个数字
第十二节12-关系运算符和运算符优先级
1.比较运算符,运算结果只有true和false
==,!=,>=,<=,>,<
=号是赋值,==是判断
int x = 5;
Console.WriteLine(x = 5);//这里是将5赋值给x,再打印x的值
Console.ReadKey();
第十三节13-赋值表达式也有值
1.赋值表达式也有值,这个值就是赋值之后左边的值
int i = (a=b)+3;先将b的值赋给a,再用a与3相加,然后赋值给i
第十四节14-前自增和后自增的区别
i++与++i的区别:
i++是赋值后再自增
++i是自增后再赋值
第十五节15-逻辑运算符(与或非)
1.逻辑运算符
&&(并且),二元运算符
||(与),二元运算符
!(非),一元运算符Console.WriteLine(!true);
第十六节16-逻辑运算符的短路问题
1.短路运算
&&当第一个为false的时候,整个运算结果一定是false,就没必要算第二了
int i = 8;
bool b = (i >10) && ((i = i + 5) > 10);
由于i>10不成立,所以不会运算((i = i + 5) > 10)后面的值,i的值还是8
第十七节17-三元运算符
案例:Console.WriteLine((i % 3 == 0 ) ? "i能被3整除" : "i不能被3整除");
练习:输出i是否是偶数
第十八节18-if简介
练习题:
1.用户输入出生的月份、日期,计算用户的"星座",然后显示这个星座的;
白羊3.21-4.20 金牛4.21-5.21 双子5.22-6.21 巨蟹6.22-7.22 狮子7.23-8.23 处女8.24-9.23 天秤9.24-10.23 天蝎10.24-11.22 射手11.23-12.21 魔羯12.22-1.20 水瓶1.21-2.19 双鱼2.20-320
第二十五节25-switchcase
1.switch(表达式)
{
case 值取1:
//语句
break;
case 取值2:
//语句
break;
...
default:
//语句
break;
}
表达式可以是byte,short,int,char,string,枚举类型
2.break意味着switch的结束,default相当于if的else,当所有case都不匹配时才执行default
3.当进行单个离散值判断的时候,switch可以用来代替if,switch能做的if都能做,反之if能做的switch不一定能做。
练习:
使用switch case 实现"月份季节判断"
第二章 C#基本数据类型的更多相关文章
- 第二章 深入 C# 数据类型
第二章 深入 C# 数据类型 1.封装又称信息隐藏,是指利用抽象数据类型将数据和数据的操作结合在一起,使其构成一个不可分割的独立实体,尽可能的隐藏内部的细节,只保留一些对外接口,使之于外部发生联系. ...
- Java 第二章 变量、数据类型和运算符
第二章 变量.数据类型和运算符 什么是变量: 变量代表一块内存区域,变量类型不一样,这一块内存的大小也不一样. #在编程语言里面,你可以通过定义变量,向内存里添加数据或者修改内存已有的数据. ...
- Python开发【第二章】:数据类型
基本数据类型 一.整型 如: 18.73.84 整型具备如下功能: class int(object): """ int(x=0) -> int or long i ...
- Python第二章-变量和数据类型
变量和数据类型 一.什么是变量,常量 思考:程序执行指的是什么? 对数据进行存储处理和计算,最终获得结果,这是程序执行的本质. 变量的概念和在数学中的变量的概念一样的,只是在计算机程序中,变量不仅可以 ...
- 学JAVA第三天,JAVA第二章《JAVA数据类型》
---恢复内容开始--- <JAVA数据类型> 我们一般都用int类型,因为int类行一般的日常生活的数据都能满足了. 当然,想李嘉诚,马云这种有钱人,int类行就不能满足帮他记钱的了,像 ...
- 第二章 深入C#数据类型
深入C#数据类型 巧记:值(无ref)+值=不变 值(无ref)+引=变 引(有ref)+值/引=变 1.值类型和引用类型 1.引用类型 源于system.object家族 ...
- Java基础知识笔记第二章:基本数据类型与数组
标识符和关键字 标识符: 1:字母,数字,下划线,美元符号 2.不能以数字开头 3.标识符不能是:true false null(尽管true false null不是java的关键字 ...
- C#本质论读书笔记:第一章 C#概述|第二章 数据类型
第一章 1.字符串是不可变的:所有string类型的数据,都不可变,也可以说是不可修改的,不能修改变量最初引用的数据,只能对其重新赋值,让其指向内存中的一个新位置. 第二章 2.1 预定义类型或基本类 ...
- Mysql技术内幕-笔记-第二章 数据类型
第二章 数据类型 Mysql中尽量不要使用UNSIGNED,因为可能会带来一些意想不到的效果 SHOW CREATE TABLE tablename\G;查看表的创建语句 ZEROFILL会将宽度小于 ...
随机推荐
- 第一天 django
全栈增长工程师实战 http://growth-in-action.phodal.com/ 生成的代码和示例不一样,static 也要加上 from django.conf.urls import u ...
- 用H5的canvas做时钟
<!doctype html><html> <head> <meta charset="UTF-8"> <title>D ...
- java之BASE64加解密
1.简介 Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,采用Base64编码具有不可读性,即所编码的数据不会被人用肉眼所直接看到. 注:位于jdk的java.util包中. 2. ...
- Android自定义对话框(Dialog)位置,大小
代码: package angel.devil; import android.app.Activity;import android.app.Dialog;import android.os.Bun ...
- SQLMAP脱裤
之前就有一个朋友问,咋使用sqlmap脱裤.然后我丢了一个参数给他,他好像懵逼懵逼的.今天又有一个哥们儿在群里问,行吧.就直接教一下. 其实很简单. --dump这个参数就是用来脱裤的哟.如果你要拖整 ...
- 7.7---找只含3,5,7的数(CC150)
----思路:利用三个队列,一个存3,一个存5,一个存7. 然后,3*3的都放第一个.然后3*5,5*5的放第二个.然后,3*7,5*7,7*7的都放第三个. 答案: public static in ...
- 微信app支付,服务端对接
首先,文档不给力,不吐槽了. 遇到的坑如下: 1. mch_id和appid没有关联关 系 这个没有花太久,参考了csdn某君的建议,直接邮件给相关技术团队(wepayTS@tencent.com). ...
- PL/Cool
毛子 2003 Petrozavodsk, Final Contest, 8.30.03. G. PL/Cool 实现一个程序,使它读入一段PL/Cool程序,并输出它的结果. PL/Cool语法 b ...
- Python操作excel,及图表展示
学习:http://www.cnblogs.com/Lands-ljk/p/5444619.html
- espcms列表页ajax获取内容 - 并初始化swiper
<link rel="stylesheet" href="swiper.min.css" type="text/css" media= ...