c#之数据类型

c#数据类型

一.基本数据类型:
(1)整数类型:
在这里插入图片描述
(2)浮点类型:
在这里插入图片描述
(3)decimal类型
与float类型保证范围内的所有十进制位数都是精准的。所以,对于decimal类型来说,0.1就是0.1,而不是一个近似值。不过虽然decimal类型具有比浮点数类型更加高的精度,但是他的范围比较小。所以,从浮点类型转换为decimal类型可能会出现溢出的错误。
二.更多数据类型
(4)布尔类型
bool类型也就是相当于java中的boolean类型,主要是用于条件表达,有两个值:true,false
(5)字符类型:
char类型表示16位字符,其取值范围对应着Unicode字符集,从技术上面来说char的大小和16位无符号整数相同,后者的取值范围为0~65535,但是char是c#中一个独特类型。
(6)字符串类型
和java中的字符串类型基本是一样的但是它支持两种不同的写法:@和$:
@:

     //正常来说这种\是会被转义的
            Console.WriteLine("D:\xxx\xxx\xx");
            //@的作用就是禁止当前字符串不进行转义的标识符
            Console.WriteLine(@"D:\xxx\xxx\xx");

$:作用是解释占位符,不被当做普通字符处理。

       string s1 = "hello";
            string s2 = "world";
            Console.WriteLine($"我想说:{s1},{s2}");

字符串常用方法:

   s1.Substring(0, 2);  //从第几位开始截取几位
    s1.StartsWith("h");  //是不是以xxx开始的  bool类型返回值
     s1.EndsWith("xx");    //是不是以xxx结束的  bool类型返回值
      s1.Replace("xx", "xx");  //将字符串中的xxx替换为xxxx
       s1.TrimEnd('x');   //将字符串中的最后一个xx字符截掉

字符串的不可变性:字符串在创建出来之后就是不可修改的,这个不可修改是对于字符串本身而言的而不是引用的人,在java中也是字符串默认为public static final的默认无法修改,就像我们的string中的ToUpperCase方法转为大写实质上也是创建了一个新的字符串。
三.类型的分类
值类型:
所谓的值类型也就是说当我们进行创建一个值类型的变量的然后将他进行赋值给其他变量,然后其实这个时候被赋值的变量就会在本地创建一个副本,当被赋值对象进行更改的时候是不会影响到之前的变量这就是值传递,类似于下面的场景:

  int a = 11;
  int b = a;
  b = 13;
  Console.WriteLine("a" + a + "b" + b);
  Console.ReadKey();

这里的输出为a:11,b:13 可见值类型的传递是不会互相影响的!

引用类型:
这里进行赋值的时候其实传递的并不是值而是变量的地址,变量引用的都是堆中的对应的地址的变量。

四。数据类型之间的转换:
主要是分为显示转换和隐式转换
显示转换的例子:

 int intNumber = (int)longNumner; //这里可能会丢失精度

隐式转换的例子:

int intNum=31416;
long LongNum=intNum;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值