zoukankan      html  css  js  c++  java
  • C#基础知识总结(二)

    摘要

      第二篇主要讲:变量、连接符占位符等、转义字符、数据的计算、数据的转换、try-catch的简单熟悉、复合运算符和自加自减

    一、变量
      1.数据存储在内存中:内存叫做RAM,内存被分隔为一小格一小格的,每个小格有个地址。内存的特点是:断电后数据丢失
      2.变量:变量代表着一块内存空间,我们可以通过名称向内存 存或读数据,有变量就不需要我们记忆复杂的内存地址
      3.声明整数类型,并赋值:int number = 1000;
      4.变量的简单类型
      数据类型:
        整型:sbyte,byte:1个字节(8位)
           short,ushort:2个字节
           int,uint:4个字节
           long,ulong:8个字节
        非整型:float,decimal,double…
      非数据类型:char,string,bool…
      5.数据类型精度:
        double只有16个精度
        decimal没有精度限制,但是一共可以保存29位数
        decimal类型变量的声明与赋值:decimal dec = 3.4m;
      6.声明变量的方式
        先声明,再赋值:
        int a;
        a = 10;
        声明并赋值:
        int a = 10;
        声明多个变量(多个变量名以逗号分隔,最后以分号结尾):
        int a,b,c;
      7.命名规则:Camel命名法
        变量:开头小写,后面每个单词开头大写:studentName
        方法名或者类名:开头大写,后面的每个单词开头大写:GetStudentName

    二、赋值符、连接符、占位符
      1.赋值符:=
        运算符有优先级
        a=a+1;
        a先加一,然后再赋值给自己

      2.连接符:+
        +在C#中有两种意义:
        一种是数学上的加法算术:两边参与运算的类型都为数据类型,则为加法
        另一种是连接的意思:两边参与运算的类型有一个为字符串时,则为连接

      3.占位符(在字符串中使用):{0开始的数字}
        在字符串中使用

    三、数据的交换
      需要借助中间变量

    int a = 5;
    int b = 10;
    int temp;
    
    temp = a;
    a = b;
    b = temp;

    四、转义字符
      我们要在字符串中输入一些特殊的字符时,如引号,回车等,需要加上转义字符
        \n:带边换行
        \":代表字符串中的"
        \b:backspace(删除前一个字符)
        \\: \
      还有很多其他的转义字符:一般是\加上其他的字符代表其他意思
      注:字符串前面加@符号

        字符串中的转义符不再转义
        字符串可以多行写
        如果在加@符号的字符串中需要加字符串时,两个""代表"

    五、算术
      1.算术运算符
        二元运算符:+ - * / %

      2.算术
        int类型和double算术类型计算,结果会转化为double

        算术运算符两边的数据类型要一致,结果类型也是一致的
        但是当运算符两边类型不同时,且类型兼容时,计算机自动做类型的转换(隐式转换)。
        且计算的结果的类型,为不丢失精度的那个类型

        不丢失数据和精度的情况才会做自动转换
        所以decimal不能隐式转换为double,因为decimal的精度大于double

    六、类型的转换
      1.强制转换
        程序不允许把高精度的数据类型转到低精度的数据类型
        如果确实需要转换,需要用代码强制转换
        格式:(目标类型)待转换的数据
        如果强制转换的过程中,发生了精度丢失,不是四舍五入,而是直接丢失精度数据

      2.Convert类提供了多种数据中间转换的方法,但是Convert转换
        不是强制转换,而是对待转换的数据进行加工

      3.转换注意项
        不管是隐式转换 还是 强制转换,都只能是数据之间的转换
        不能在字符串和数据之间进行强制转换,只能通过Convert类来转换

        Convert不再仅是内存级别的转换,而是考虑数据意义的转换。Convert是一个加工、改造的过程

        一切类型都可以转换成字符串

    七、try-catch的简单熟悉
      1.try-catch使用方法
        try
        {
          代码
        }
        catch
        {
          代码
        }
      如果try中的代码没有出现异常,则程序正常执行到try中的内容后,不会执行catch中的内容;如果try中的代码一旦出错,try中出错代码位置后面的代码都不会执行,程序立即跳到catch中去执行代码

    八、习题计算(熟悉算术运算符)
      输入一个天数,计算输入天数有几个月零几周零几天

     1 class Program
     2 {
     3     static void Main(string[] args)
     4     {
     5         //输入天数,计算出有几周零几天
     6         //Console.WriteLine("请输入需要计算的天数:");
     7         //int days = Convert.ToInt32(Console.ReadLine());
     8         //int weeks = days / 7;
     9         //int day = days % 7;
    10         //Console.WriteLine($"你输入的{days}包含{weeks}周零{day}天。");
    11         //Console.ReadKey();
    12 
    13         //输入天数,计算出有几个月零几周零几天
    14         Console.WriteLine("请输入需要计算的天数:");
    15         int days = Convert.ToInt32(Console.ReadLine());
    16         int months = days / 30;
    17         int weeks = ( days - 30 * months ) / 7;
    18         int day = ( days - 30 * months ) % 7;
    19         Console.WriteLine($"你输入的{days}包含{months}个月零{weeks}周零{day}天。");
    20         Console.ReadKey();
    21     }
    22 }

    九、复合运算符和自加自减
      1.运算符
        一元运算符:只有一个操作数:a++,a--
        二元运算符:两个操作数:a+b
        三元运算符:三个操作数:a>b?a:b

      2.自加
        a++是后加
        ++a是先加

      C#中一般情况下,一元运算符优先级大于二元运算符
      int a = 3;
      int b = 3;
      int c = ++a * b++;
      c最后为12,因为是4*3

      3.复合运算符
        +-*/%和=组合称之为复合运算符
        如:+=,-=,*=
        a=a+2;
        等效于
        a+=2;

  • 相关阅读:
    NSBundle使用:获取文件路径
    安装git后遇到的问题及解决
    (转)iPhone 字体显示效果大全
    iPhone开发小技巧
    协议与委托简单实例讲解(转)
    Zoom Me FAQ
    Show Desktop Pro FAQ
    The Startup Manager FAQ
    Finder Quick Menu FAQ
    The App Locker FAQ
  • 原文地址:https://www.cnblogs.com/yezongjie/p/20181130CSharpBasicTwo.html
Copyright © 2011-2022 走看看