片言程序
在这里记下一段学习的历程!
博客园
社区
首页
新随笔
联系
管理
订阅
.net知识和学习方法系列(七)string类型
上篇文章中说到string类型是引用类型,咱们今天来看看。
1
class
Program
2
{
3
static
void
Main(
string
[] args)
4
{
5
int
i
=
10
;
6
string
s
=
"
改变前
"
;
7
Console.WriteLine(
"
i={0}
"
,i);
8
Console.WriteLine(
"
s={0}
"
, s);
9
Console.WriteLine(
"
-----------------------
"
);
10
FangFa(i,s);
11
Console.WriteLine(
"
i={0}
"
, i);
12
Console.WriteLine(
"
s={0}
"
, s);
13
}
14
static
void
FangFa(
int
i,
string
s)
15
{
16
i
=
100
;
17
s
=
"
改变后
"
;
18
}
19
}
从上面的代码看,如果s为引用类型的话,在第二次输出s的时候应该改变,但结果是
s的值并未发生变化,为什么呢?
看一下MSDN怎么说:
String 对象称为不可变的(只读),因为一旦创建了该对象,就不能修改该对象的值。看来似乎修改了 String 对象的方法实际上是返回一个包含修改内容的新 String 对象。
意思每个string变量都是一个String类的对象,String的对象有个特点,一旦创建,就是不能更改的了,那为什么能第二次给string类型的变量赋值呢?
1
string
a
=
"
123
"
;
2
a
=
"
456
"
;
这里的a第一次是"123",第二次是"456",其实本质上已经是两个对象了,只不过值为"123"的对象名与值为"456"的对象名一样,当用a这个变量的时候,IDE索引的是最后一次赋的值。
posted @ 2008-02-18 18:13
桂素伟
阅读(146)
评论(1)
编辑
收藏
所属分类:
C#&Asp.net&WinForm
发表评论
回复
引用
#1楼
2008-02-20 21:28 |
冠 [未注册用户]
等着看(八)。
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
闪存
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
该文被作者在 2008-06-29 16:07 编辑过
"五向定位"职业成长路线公开课(上海、南京、大连)
Google站内搜索
相关文章:
Asp.net(C#)实现验证码功能
C#字符串分割
使用Visual Studio2005入门.Net2.0系列视频教程
.NET设计模式系列文章
在Asp.net中如何实现目录选择
C# WinForm中能让显示时间的钟表的指针随系统时间一起动起来吗?
在Asp.net中如何实现目录选择
C# 来这里学习C#吧
相关链接:
所属分类的其他文章:
.net知识和学习方法系列(二十一)CLR-枚举
.net知识和学习方法系列(二十)CLR-委托
.net知识和学习方法系列(十八)CLR-构造函数
.net知识和学习方法系列(十七)CLR-CLR中的值类型和引用类型
.net知识和学习方法系列(十六)CLR-托管理程序和它的运行
.net知识和学习方法系列(十五)类型,对象,堆栈和托管堆
Asp.net用户管理API的应用(下)
Asp.net用户管理API的应用(上)
Asp.net的用户管理
.net知识和学习方法系列(十四)TraceListener的应用
最新IT新闻:
Facebook创始人:信息共享或存摩尔定律
微软承认Vista用户账户控制功能有问题
资本寒冬侵袭中国视频网站 营销春天或不远
金融风暴波及全球创业板 中国概念股难独善其身
携程范敏:CEO从接发传真做起
公告
用MSN联系我
<
2008年2月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
1
2
3
4
5
6
7
8
与我联系
发短消息
搜索
留言簿
给我留言
查看留言
我管理的小组
山西DotNet俱乐部
大连微软程序俱乐部
我参加的小组
创业交流
Silverlight
ASP.NET
WinForms
LINQ
.NET 3.x
AJAX
我参与的团队
山西DotNet俱乐部(1/297)
MVP(微软最有价值专家)团队(1/657)
Silverlight学习与研究(0/287)
Windows Vista开发(0/237)
Windows Live(0/1)
大连微软程序员俱乐部 (0/54)
随笔分类
C#&Asp.net&WinForm(24)
(rss)
WPF(2)
(rss)
俱乐部信息(4)
(rss)
其他(5)
(rss)
文章分类
C#&WinForm&Asp.net
(rss)
WPF
(rss)
我的链接
Shanxi DotNet Club
最新随笔
1. .net知识和学习方法系列(二十一)CLR-枚举
2. .net知识和学习方法系列(二十)CLR-委托
3. .net知识和学习方法系列(十九)CLR-事件
4. .net知识和学习方法系列(十八)CLR-构造函数
5. .net知识和学习方法系列(十七)CLR-CLR中的值类型和引用类型
6. .net知识和学习方法系列(十六)CLR-托管理程序和它的运行
7. Internet Explorer 8 Beta2 常见问题解答
8. .net知识和学习方法系列(十五)类型,对象,堆栈和托管堆
9. 应用程序域(Application Domain)
10. Asp.net用户管理API的应用(下)
11. Asp.net用户管理API的应用(上)
12. Asp.net的用户管理
13. 俱乐部又多了一个MVP
14. 我的WebCast
15. 要加入windows live的朋友请到这里
16. 要加入大连程序员俱乐部的朋友请到这里
17. .net知识和学习方法系列(十四)TraceListener的应用
18. .net知识和学习方法系列(十三)Debug和Trace
19. 关于设计模式
20. Windows Live
阅读排行榜
1. WPF开发环境 (2955)
2. 应用程序域(Application Domain)(1740)
3. 一个Ajax的例子(1636)
4. ModalPopupExtender的用法(1406)
5. 俱乐部又多了一个MVP(1357)
评论排行榜
1. 俱乐部又多了一个MVP(22)
2. WPF开发环境 (21)
3. 应用程序域(Application Domain)(17)
4. 要加入大连程序员俱乐部的朋友请到这里(11)
5. Asp.net的用户管理(7)