zoukankan      html  css  js  c++  java
  • C#语言基础学习笔记

     

    一、运算符与表达式——语言中的标点符号

    1、运算符

    • 算术运算符:+、—、*、/、%、++、——

    Notice:%表示求余,没有乘方运算;

               尽量不要在复杂的程序里面写,C#目的是使程序简单易懂。

    • 关系运算符:>、<、>=、<=、==、!=

    Notice:等于及不等于的写法,与VB不同

    • 逻辑运算符:!(逻辑非)、&(逻辑与)、|(逻辑或)、^(逻辑异或)、&&(短路与)、||(短路或)

    Notice:条件逻辑运算符,也叫短路(short—circuit)逻辑运算符

    &&:第一个操作数为假,则不判断第二个操作数

    ||:第一个操作数为真,则不判断第二个操作数

    E.g: MyDate=d;

        If((d!=null)&&(d.day>31))

    {

    //do  sth with d

    }

    • 位运算符:&、|、^、~、>>、<<
    • 赋值运算符:=、(扩展赋值运算符:+=、—=、*=、/=)

    Notice:当”=”两侧的数据类型不一致时,可以适用默认类型转换或强制类型转换(casting)原则进行处理。E.g: long l = 100; int i = (int)l;

           特例:可以将整形常量直接赋值给byte、short、char等类型变量,且不需要进行强制类型转换,只要不超出其表数范围。E.g: byte b = 12;  //合法  byte b =4096; //非法

    • 字符串连接运算符:+

    E.g: int i=300 + 5;

        String s = “hello,” + “world!”;

    Notice:“+”运算符两侧的操作数中只要有一个是字符串(String)类型,系统会自动将另一个操作数转换为字符串然后再进行连接。

    E.g: string s = “hello” + 300 + 5 + “号”;  //输出hello,3005号

    2、表达式:符合一定语法规则的运算符和操作数的序列

    表达式的值:对表达式中的操作数进行运算得到的结果

    表达式的类型:表达式的值的数据类型

    类型转换:

    (1)赋值时:当”=”两侧的数据类型不一致时,可以适用默认类型转换或强制类型转换原则进行处理。特例,可以将整型常量直接赋值给byte、short、char等类型变量,不需要进行强制类型转换,只要不超出其表数范围。E.g: byte b = 12;  //合法  byte b =4096; //非法

    (2)表达式中的类型转换

    当有不同种类的混合运算时:int   long   float   double

    Notice:整型提升,所有的byte、short、char等转为int

    编程提示:字符串转成数值:double.Parse(s)、int.Parse(s)

              数字转成字符串:10.ToString()、”” + 10

              Convert类:Convert.ToInt32(textbox1.Text)、Convert.ToDateTime(“2009-10-01 14:00”)

    3、运算符优先级与结合性

    单目>算术>关系>逻辑>三目>赋值

    大部分从左至右结合

    二、流程控制语句——语言中的语句

    结构化程序设计中的三种基本流程:顺序、分支、循环

    1、简单语句:方法调用语句及赋值语句,没有表达式语句这一说

    E.g:Console.Write(“Hello Word”);   b = a>0?a:-a;  d=int.Parse(s);

    2 + 3;  //错误

    2、分支语句——if

    if(条件表达式)

    语句块

    else

    语句块

    E.g: LeapYear.cs

    if((year%4 == 0 && year%100 == 0)|| year%400 == 0)

    Console.WriteLine(year+“是闰年。”);

    else

    Console.WriteLine(year+“不是闰年。”);

    小技巧:注意书写格式,特别是缩进

    将后面的花括号去掉,再重新输一下,就会自动排版;也可以按Ctrl+E+D(格式文档)或Ctrl+E+F(格式化选中部分)

    3、多分支语句——switch语句

    Switch(expression){

    Case const1:

    statement1;

    break;

    Case const2:

    statement2;

    break;

    ……

    Case constN:

    statementN;

    break;

    default:

    Statement_default;

    break;}

    Notice:与C++不同的地方:a、变量除了整型、枚举型,还可以用字符串;不能随便贯穿,必须有break;(除非几个case连起来,中间没有别的语句)

    4、循环语句

    (1)循环语句功能:语句在循环条件满足的情况下,反复执行特定代码。

    (2)循环五要素

    A、初始化部分  B、循环条件  C、循环体部分  D、迭代部分(循环改变)  E、结束后处理

    E.g: int s = 0;

       For(int i = 0;i <=100; i++)

    {

    S+=i;

    }

    Console.WriteLine(s);

    (3)循环语句分类

    A、for循环

    Int result =0;

    For(初始化部分int i = 0;循环条件 i<=100;迭代部分i++)

    {

    循环体;result +=i;

    }

    B、While循环

    初始化部分;   int result = 0; int i = 0;

    While(循环条件i< = 100){

    循环体; result += i;

    迭代部分; i++;

    }

    C、do-while 循环(至少执行一次)

    Int result =0;  int i=0;

    do{

    循环体;  result+=i;

    迭代部分; i++;

    }while(循环条件i<=100);

    5、跳转语句

    (1)break语句:结束循环(相当于VB中的exit do,exit for)

    (2)Continue语句:进入下一次循环

    (3)Goto语句:跳转到某个语句标号。但是会使程序变得混乱,C#中的goto语句可以从内层跳到外层;标号的写法:标识符加个冒号(:)

    (4)Try{}catch{}语句:异常捕获

  • 相关阅读:
    Dockerfile 指令 VOLUME 介绍
    Spring boot(4)-应用打包部署
    Docker Dockerfile详解
    poj-1045(数学不好怪我咯)
    poj-3185-开关问题
    poj-1163-The Triangle
    归并排序(Merge Sort)
    交换排序—快速排序(Quick Sort)
    交换排序—冒泡排序(Bubble Sort)
    选择排序—堆排序(Heap Sort) 没看明白,不解释
  • 原文地址:https://www.cnblogs.com/zyf2014/p/5427702.html
Copyright © 2011-2022 走看看