zoukankan      html  css  js  c++  java
  • 第二章 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 ,如:a\nb
    定义一个路径时,可以在路径前面加@,如@c:11.txt,@告诉编译器只代表一个普通的,@只对起作用

    第六节6-char、bool以及string和数值类型的转换
    1.char,字符类型,有且只有一个字符,用单引号括起来
    char ch1 = ' ';
    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 实现"月份季节判断"

  • 相关阅读:
    sql except 用法,找两个表中非共同拥有的
    ‘堆’出你的洪荒之力
    原来你是个这样的JVM
    变形词
    54题
    最大对称子数组
    java 线程之间通信以及notify与notifyAll区别。
    大型网站架构系列:消息队列
    剑指offer第10题
    & 和 && 区别
  • 原文地址:https://www.cnblogs.com/genesis/p/4904611.html
Copyright © 2011-2022 走看看