zoukankan      html  css  js  c++  java
  • C#类型转换 20140815

    一、类型转换

    1.强制转换(显示转换)

    A.变量=(需要转换的类型)变量--仅适合于同一类型内转换.

    例:float a;

         double b=3.14;

         a=(float)b;

    B.变量=Convert.To数据类型 (变量)--值类型转换.

    PS:TO数据类型必须用".net数据类型"来表示.

    例:float a;

        double b=3.14;

        a=Convert.ToSingle(b);

    C.变量=数据类型.parse(变量)--"()"内只能为字符串类型,将字符串解析成相应值类型.

    例:float a;

         double b=3.14;

         a=float.parse(b)

    PS:只有"()"内字符串符合要转变变量的类型才可以运行,否则编辑时不提示错误,但无法运行.

    例:string b="Hello";

          int a=int.Parse(b)--因"Hello"无法转换为"int".

    2.电脑自动转换(隐式转换)--计算器只能针对同一类型数据进行运算.

    二、运算符

    1.数学运算

    共7种:1)+  2)-   3)*   4)/   5)%   6)++   7)——

     4)/ --整型与整型运算结果为整型.

    例:int a=10;

         int b=3;

         Console.Writeline(a/b)--返回信息为"3".

    5)%--取余,控制数据范围时需使用.

    例:int a=2357;

          int b=36;

          Console.WriteLine(a/b)--返回信息值在0-35之间,如不需0值,可+1,,取值1-36之间.

    6)++   自增    7)——   自减

    A.一条语句中只有"++""——"运算时,变量前"++""——"与变量后"++""——"是一样的,无优先处理顺序.

      例:int a=10;

            a++;

          Console.WriteLine(a);--返回信息为"11".

           int a=10;

            a——;

         Console.WriteLine(a);--返回信息为"9".

    B.一条语句中在除了"++""——"运算外还有其他运算时,变量前"++""——"运算中优先运算"++""——"数据;变量后"++""——"运算中最后运算"++""——"数据.

    例:int a=10,b;

          b=a++;    --b=a,a=a+1.

          Console.WriteLine(a);--11

          Console.WriteLine(b);--10

    例:int a=10,b;

          b=++a;    --a=a+1,b=a.

          Console.WriteLine("a="+a);   --a=11

          Console.WriteLine("b="+b);   --b=11

    例:int a=10,b;

         b=a++,a=b++;

         Console.WriteLine("a="+a);   --a=12

         Console.WriteLine("b="+b);   --b=12

    例:int a=10,b;

         b=++a,a=b++;

         Console.WriteLine("a="+a);   --a=12

         Console.WriteLine("b="+b);   --b=11

    PS:"++""——"不论前后均仅针对于变量,"++""——"的前面只能是一个变量,不能是常量或公式.

    2.关系运算
    共6种:1)==   2)!=    3)>    4)<   5)>=    6)<=

    1)== --判断

    例:int a=3,b=4,c=5;

    Console.WriteLine(a==b);--bool类型,表示a与b相等吗?成立吗?--返回信息为"false".

    使用:可用于判断结果是否为预期.

    例:Console.Write("请输入一个100以内的整数:");

    string s=Console.ReadLine();

    int num=Convert.ToInt32(s);

    Console.WriteLine(num%7==0)--取余是否为0?是否为整数?--数值是否为7的倍数?

    Console.WriteLine(num%10==7)--数值个位数是否为7?

    Console.WriteLine(num/10==7)--数值十位数是否为7?

    PS:所有关系运算符,返回信息都是bool型;表达成立--返回信息为True;表达不成立--返回信息为False.

    3.逻辑运算

    共3种:1)&&     2)||     3)!

    1)&& --逻辑与,表示并且.

    A.True && True = True

    B.False && True =False

    C.False && False =False
    例:int a=3,b=4,c=5;

    Console.WriteLine(a>b&&b<c);--返回信息为"False".

    例:int a=3,b=4,c=5;

    Console.WriteLine(!(a>b)&&b<c);--返回信息为"True".

    2)|| --逻辑或

    A.True || True =True

    B.False || True =True

    C.False || False =False

    PS:所有逻辑运算符,返回信息都是bool型;表达成立--返回信息为True;表达不成立--返回信息为False.

    3)!  --逻辑非,取反.

    4.其他运算符

    1)赋值运算符:=

    2)复合运算符:=为赋值 A.+= B.—= C.*= D./= E.%=

    例:int a=5;

    a+=10; --a=a+10.

    Console.WriteLine(a);--返回信息为"15".

    3)条件运算符:A.?    B.:

    (表达式1)?(表达式2):(表达式3)

    例:Console.WriteLine("请输入24小时制的时间:");

    int h =Convert.ToInt32(Console.ReadLine());
    string ap="";

    ap=h>12?"PM":"AM"; --h大于12吗?成立就是"PM",不成立就是"AM".

    h=h>12?h-12:h; --h大于12吗?成立就减去12,不成立就是h.

    三、运算符的运算优先级

    数学运算符高于关系运算符,关系运算符高于逻辑运算符.

    1)数学运算符的运算优先级:"++""——"高于"*""/""%","*""/""%"高于"+""—".

    2)逻辑运算符的运算优先级:"&&"高于"||".

    PS:()是最为优先运算,其次是!;变量后"++"为最后运算,其次是=.

     

  • 相关阅读:
    【leetcode】1295. Find Numbers with Even Number of Digits
    【leetcode】427. Construct Quad Tree
    【leetcode】1240. Tiling a Rectangle with the Fewest Squares
    【leetcode】1292. Maximum Side Length of a Square with Sum Less than or Equal to Threshold
    【leetcode】1291. Sequential Digits
    【leetcode】1290. Convert Binary Number in a Linked List to Integer
    【leetcode】1269. Number of Ways to Stay in the Same Place After Some Steps
    【leetcode】1289. Minimum Falling Path Sum II
    【leetcode】1288. Remove Covered Intervals
    【leetcode】1287. Element Appearing More Than 25% In Sorted Array
  • 原文地址:https://www.cnblogs.com/DORCASQING/p/3915300.html
Copyright © 2011-2022 走看看