zoukankan      html  css  js  c++  java
  • 初学C#之变量、占位符、转义符、还有就是类型转换

    ㈠、定义变量

    • 先定义再赋值
    int Num1;
    Num1 = 10;
    • 定义的同时赋值
    int age = 28;
    • 定义多个变量同时赋值,先决条件变量类型相同,例如:
    string phome = "18912508888", name = "王大";
    • 定义变量时,数据类型后面添加“?”

    在变量类型后面添加“?”表示可空值类型。例如:

    int a = null;//出错提示:无法将null转换为"int",因为它是不可为null的值类型

    但是写成以下格式就不会报错

    int? a = null;

    ㈡字符串中“+”和占位符{}

    • 是数学中的加法运算:两变参与加法运算的数据类型为数字类型,则“+”便是数学上的加法的意义。
    • 是连接的意思:两边参与加号运算的数据,有一个是字符型,那么这个“+”号就是连接的意义。

    占位符就是先占住一个固定的位置,等着你再往里面添加内容的符号。站位符由{数字}组成,数字由0开始编号。

    第1个占位符:{0}

    第2个占位符:{1}

    第2个占位符:{2}

    string name = "张三";
    int age = 28;
    decimal salary = 7600m;
    //占位符{0}{1}{2}无顺序要求,可以在一句话中重复使用{0}代表第一个参数.
    //重点:占位符的编号不能超过参数的总数减1个.超过报错
    Console.WriteLine("我叫{0},今年{1}岁,我的工资{2}元", name, age, salary);

    ㈢转义符和“@”符号在字符串中的作用

    常用的转义字符及其含义:
    ’     单引号
    ”     双引号
    \     反斜杠

     

    Console.WriteLine("E:\Program Files\火马游戏\GamePlaza.exe");

     


         空
    a     警告(产生峰鸣)
         退格 // 就是键盘上Backspace功能,但是在字符窜末尾添加无效果。
    f     换页
         换行

     

    Console.WriteLine("煮豆燃豆萁,
    豆在釜中泣.
    本是同根生,
    相煎何太急.");
    

     

     


         回车  //在字符串中添加 后面的字符将覆盖前面的字符

         水平制表符   //就是键盘的按Tab的效果
    v     垂直制表符

    @符号的作用:

    • 取消转义符号""在字符串中的转义作用.
    • 将字符串按照原格式输出
    Console.WriteLine(@"E:Program Files火马游戏GamePlaza.exe");

    ㈣数据类型隐式转换

    所谓隐式转换,就是系统默认的转换,其本质是小存储容量数据类型自动转换为大存储容量数据类型。

    比如:int (隐式转换)==>longfloatdoubledecimal

    隐式数值转换表(C# 参考)

    你猜猜下面的运算结果:

    int a = 10, b = 3;
    double quo = a / b;//结果:3

    本来我以为是:3.333333。,但事实上结果是3.原因是参与运算的操作数(a、b)类型全部相同,其运算结果类型也与操作数的类型相同.然后赋值给quo变量变成了double类型。

    其中操作数有一个是double类型其运算结果就是double类型。如下:

    int a = 10, b = 3;
    double quo = 1.0 * a / b; //结果3.3333。。。

    ㈣数据类型显示转换

    方法1. 该转换方式主要用于数字类型之间的转换,从int类型向long,float,double,decimal 类型转换可以使用隐式转换,但从long型到int 就需要使用显示转换,即使用该类型的转换方式否则产生编译错误。

      该方式对于浮点数会无条件的舍去,会失去精确度

      对于char类型的到int类型的转换,传回的值是ASCII码

    double pi = 3.1415926;
    int r = 5;
    double s = pi * Math.Pow(r, 2);//结果78.539815
    int temp = (int)s;            //结果78.舍去了小数部分
    char sex = 'n';
    temp = (int)sex;             //结果110,可以转换单字母型

    方法2。int.Parse(string 变量名)该方式是将数字内容的字符串转换为int类型,如果字符串的内容为Null ,则抛出ArgumentNullException异常;如果字符串内容不是数字,则抛出FormatException异常。

    使用该方法只能处理字符串的内容,而且转换后的字符串内容要在int类型的可表示范围之内

    string str1 = "3.1415926";
    double dbla = double.Parse(str1);//结果:3.1415926
    //int Num1 = int.Parse(str1); //语法没报错,启动时报错.提示字符串格式不正确.原因int.Parse只能转整型数值型字符串
    int Num1 = (int)double.Parse(str1); //结果:3 分两步转换就可以了.
    Console.WriteLine("dbla = {0} Num1 = {1}",dbla,Num1)

    方法3.Convert.ToInt32 该方式不仅可以将字符串类型转换为int,还可以将其他的类型转换为int。变量若为object或string类型,当其值为Nul时,会传回0,不会造成程序错误,但是若此string类型的值为string.Empty,转换成int时,程序仍会出错。

    string str1 = "3.1415926";
    double dbla = Convert.ToDouble(str1);//结果:3.1415926

     

     

     

  • 相关阅读:
    Leetcode python 141. 环形链表
    leetcode python 387. 字符串中的第一个唯一字符 383. 赎金信 242. 有效的字母异位词
    leetcode python 566. 重塑矩阵 118. 杨辉三角
    leetcode python 350. 两个数组的交集 121. 买卖股票的最佳时机
    小程序常见的应用场景
    小程序基础入门
    高二数学必修4
    高二数学必修3(概率)
    高中3年数学知识梳理 & 成考 专升本 高数对比;
    高一数学必修1
  • 原文地址:https://www.cnblogs.com/tianxuan123/p/6998570.html
Copyright © 2011-2022 走看看