您的位置:首页 > 编程语言 > C#

C#命名空间的使用、添加命名空间、引用类型和值类型、字符串与char数组转换

2017-05-26 14:32 781 查看
命名空间: 命名空间的东西属于它,类属于命名空间;

若调用命名空间的东西时,不包含时需要添加命名空间

1、项目中没有包含命名空间

比如 若using System;不存在;调用Console.WriteLine();    

方法1:将鼠标点到Console前面,等待出现需要显示的命名空间。

方法2:alt+shift+F10

2、一个项目中加另一个项目

第一步:选中项目--->右键   ----->添加引用----->项目----->添加要加入的项目;

第二步:在项目开始加入Using   项目的命名空间;

引用类型和值类型

值类型的值存储在栈中:int  double   decimal   char  bool   struct  enum  

引用类型的值存储在堆中,名称在栈中:string、自定义类、数组、集合、object

string   s="hello";

引用类型: “hello”的存储在堆中,地址存在栈中,名字为s;

字符串的不可变性

int  num1=100;
num1=200;   // 在栈中,num1中存放的本来是100,经过赋值后,覆盖掉100,值变为200;
string  key="听课";
key="放学";   // 在栈中,key存放的本来是“听课”的地址,经过赋值后,堆中“听课”不变,新开辟一块空间存放“放学”,将新的地址放到key指向的栈中。
string  key1="学习";
string  key2="学习";  //这两个string中内容相同,在堆中只开辟了一个空间;在栈中开辟了两个空间。重新赋值的话,在堆中再开辟空间。
//string 就相当于一个char类型的只读数组。
StringBuilder sb= new StringBuilder(); //处理字符,运算速度很快,不需要每次都开辟空间


字符串string与char类型的数组转换

string  name="tanghell";

string字符串可以看到char类型的只读数组;所有可以通过数组访问的方式访问:name[0]='t';(错误)

但是不能采用访问数组的方式改变string,因为string相当于只读的数组;name[0]='A';  (error)   

方法:

1、字符串---->char类型的数组;

2、  更改   ;

 3、 char类型数组------->字符串

1、char [ ]   s=name.ToCharArray();  //将字符串转为char类型的数组
2、s[0]='A';   //更改
3、name=new string(s);   //将char类型的数组转换为字符串。 得到改变后的string,在堆中的存储位置已改变。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐