zoukankan      html  css  js  c++  java
  • 03C#基础(2)

    1、比较运算符

    ==等于;  !=不等于;  >大于;  >=大于或者等于;  <小于;  <=小于或者等于;

    比较运算符(又称关系运算符)用来进行值得真假性判断,结果是bool类型;

    2、运算符优先级

    运算符有优先级,优先级高的优先"结合运算";

    伟大的"()"的优先级是最高的;

    3、赋值表达式的值

    赋值表达式本身就是一个值,这个值就是赋值之后左边变量的值;

    4、i++和++i

    i++是赋值之后再自增,++i是先自增再赋值;

    i--和--i也是一样的;

    5、逻辑运算符

    逻辑运算符主要是用来对布尔类型的值进行运算的,主要有:&&(与/并且);||(或);!(非);

    &&二元运算符,只有两边的的表达式或者值结果为true时,结果才是true,否则都为false;

    ||二元运算符,只要有一个为true,结果就是true;

    !:一元运算符,取反,真的变假,假的变真;

    短路运算

    &&运算:当第一为false时,整个运算结果一定是false,就没有必要再去算第二个了;

    ||运算:也是如此,前面有一个为true结果就一定是true,也没有必要算后面的;

    !就一个参与运算,不存在短路;

    6、三元运算符
    语法:条件表达式?表达式1:表达式2

    如果条件表达式为true,则表达式的值为"表达式1",否则为"表达式2";

    7、if语句
    语法:

    1 if(比较表达式)
    2 {
    3 //要执行的代码块
    4 }

    如果比较表达式成立,则执行大括号里面的语句

    如果if语句后面只有一条语句,可以简写,省略大括号(不建议),哪怕只有一句话,也要写大括号;

    1 if(比较表达式)
    2     Console.WriteLine("演示代码");//要执行的代码块;

    如下代码:

     1 if(比较表达式)
     2     语句1;
     3     语句2;
     4 
     5 //编译器编译时会帮我们把大括号加上变成下面的代码
     6 
     7 if(比较表达式)
     8 {
     9     语句1;
    10 }
    11 语句2;

    else子句

    if语句后面还可以带else

    1 if(比较表达式)
    2 {
    3 //比较表达式为true时执行的代码块
    4 }
    5 else
    6 {
    7 //比较表达式为false时执行的代码块
    8 }

    else if

    if还可以带else if

     1 if(条件表达式1)
     2 {
     3     //条件表达式1为true时要执行的代码
     4 }
     5 else if(条件表达式2)
     6 {
     7     //条件表达式2为true时要执行的代码
     8 }
     9 else if(条件表达式3)
    10 {
    11     //条件表达3为true是要执行的代码
    12 }

    执行过程:首先判断第一个表达式,如果成立则执行其所带的大括号里面的语句块;否则再判断下一个条件表达式是否成立,以此类推

    8、switch-case

    语法:

     1 switch(表达式)
     2 {
     3     case 取值1:
     4         //语句;
     5         break;
     6     case 取值2:
     7         //语句;
     8         break;
     9     ...
    10     default:
    11         //语句;
    12         break;
    13 }

    表达式可以是byte、short、int、char、string、枚举类型;

    break意味着switch的结束;default相当于if语句的else,当所有case语句都不匹配则执行default;

    多个switch条件合并的问题:当多个case条件要执行的代码是一样的情况下,可以合并,最后加一个break;

    9、for循环

    语法:

    for(初始化表达式;循环条件表达式;循环后的操作表达式)
    {
        //循环体语句;
    }

    最开始先执行"初始化表达式";然后执行:先判断"循环条件表达式",如果为true,则执行"循环体语句";然后执行"循环后的操作表达式";


    10、while循环
    语法:

    while(条件表达式)
    {
        //循环体;
    }

    每次循环前判断"条件表达式",如果为true,则执行"循环体",然后再进行下次判断;

    for和while在实现上可以互相替代;

    11、do-while循环

    do
    {
        //执行语句;
    }
    while(条件表达式);

    执行过程:先执行"执行语句",再判断"条件表达式"决定是否进入下次循环;

    do-while和while的主要区别是:do-while的执行语句至少被执行一次,while的执行语句可能一次都不执行;


    12、数组

    语法:

    类型[] 数组名 = new 类型[个数]
    int[] arr = new int[5];

    在读写的时候,数组名后面的[]叫做序号,又叫下标,,指的是对数组的元素进行操作,数组的下标从0开始,所以最后一个元素的下标是"个数-1";

    13、数组的遍历
    数组使用常见问题:对于int、double、float等数组,没有赋值的元素被初始化为0;

    对于String等引用类型(初始化为null);


    14、方法简介
    如果程序很多地方都要计算一个数组的最大值,难道每次都写一堆代码?

    抽象出方法(Method)/函数(Function)

    方法的主要格式:

    返回值类型 方法名 (参数类型 参数1,参数类型 参数2...)
    {
    }

    方法就是一堆可以重复使用的代码段;

    方法的执行过程中无法确定的数据以形参传递过来;

    方法的执行结果以返回值进行返回;

    方法可以没有参数;方法可以没有返回值(void);

    如果没有返回值, 则在需要执行结束的地方return; 如果没写return;, 编译器则在最后一句后面默认加return;

    return:不仅终止后面的代码,连if、for等都结束了意思就是结束整个方法

    方法必须每个执行路径都有返回值

    调用方法时不用去管定义方法时的参数名称是什么

    方法内部的变量,外面不能使用;

    15、方法重载

    只是参数名字不一样,不能构成重载;

    只是返回值类型不一样,也不能同时存在(构成合法的重载);

    只要参数个数或者参数类型不同即可构成合法重载;

    16、可变长度数组params

    sum(int name,params string[] data)

    可变参数前面还可以有其它参数,只要保证可变参数是最后一个;

  • 相关阅读:
    [arXiv18]更快的基于非二叉化自底向上策略的转移系统成分句法分析
    [AAAI18]面向序列建模的元多任务学习
    [COLING18]两种成分句法分析的局部特征模型
    [ACL18]基于RNN和动态规划的线性时间成分句法分析
    成分句法分析综述
    [NAACL16]RNN文法
    [TACL17]基于中序转移的成分句法分析
    K-摇臂赌博机算法与实现
    关于JVM案例分析(四)
    关于JVM案例分析(三)
  • 原文地址:https://www.cnblogs.com/pirates/p/4486518.html
Copyright © 2011-2022 走看看