关于c#里的string 类型(转http://xianyun0216.blog.51cto.com/714887/167194)

String 是字符串类型,它是个特殊的引用类型,特殊特殊到那呢?一直不解,近期大概发现了一些特殊。
String a=abc;
String b=abc;
这里的a b 不但值相同而且其引用的内存区域也相同。
当将b变成“bcd”时候,b的引用就不再指向a所指向的内存区域。
而是重新开辟了另一块内存空间。
其实更严格的说是b 找所有的内存区域,如果没有和所指向区域值相同的内存区域则开辟新的,放置这前所未有的值
而且在c#中要判断两个string类的对象的值是否相同,有两种方法即
1==
2,equals()
);
要是想判断他们是否指向同一个引用则这两个对象向上转型,
转成object对象。
下面是一个经典的题:
Class test
{
      Public static void change(string  x, string  y)
{
x=”bcd”;
y=x;
Console.writeLine(x)
Console.writeLine(y)
}
Static void main(string [] args)
{
String a=”abc”;
String b=”bcd”;
Change(a,b);
Console.writeLine(a);
Console.writeLine(b);
Console.ReadLine();
}
}
输出后结果:
bcd
bcd
abc
bcd
 
a
b
abc
bcd
当调用方法时:
Chang(a,b);
就相当于做了
String x=a
String y=b;
于是就有了:
a
b
abc
bcd
x
y
当执行
x=”bcd”;
y=x;
a
b
abc
bcd
x
y
所以有了如上结果。
String是引用类型值传递;
数组是值类型引用传递

 

注:String 是引用类型,不过是不可变的。对字符串做一些操作(比如大小写的转换、+=), 实际上是重新创建了一个字符串(重新分配一块内存)。这也是为什么在做大量字符串拼接的时候要使用StringBuilder 而不用+=。

根据引用\[1\]中的信息,logstash启动报错"could not find jruby in D:\elastic-logstash-98dc5df\vendor\jruby"是因为在指定的路径下找不到jruby。这可能是由于jruby未正确安装或路径设置不正确导致的。 要解决这个问题,您可以尝试以下几个步骤: 1. 确保您已正确安装jruby。您可以检查jruby的安装路径是否与配置文件中指定的路径一致。 2. 检查logstash的配置文件(logstash.conf)中是否正确指定了jruby的路径。您可以确认配置文件中的路径是否与实际路径匹配。 3. 如果您已正确安装jruby并且配置文件中的路径也正确,那么可能是环境变量设置不正确导致的。您可以检查您的环境变量设置,确保jruby的路径已正确添加到PATH变量中。 如果您仍然遇到问题,您可以参考引用\[2\]和引用\[3\]中的信息,尝试其他解决方法,如重新安装logstash或检查系统中是否存在其他冲突的logstash安装。 请注意,以上建议是基于提供的引用内容给出的,如果您有其他相关信息或特定环境的限制,请提供更多详细信息以便我能够给出更准确的建议。 #### 引用[.reference_title] - *1* [【Logstash】安装logstash出现 could not find jruby in xxx异常解决](https://blog.csdn.net/xianyun1992/article/details/125985694)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Error:在安装elasticsearch和logstash程序出现的报错](https://blog.csdn.net/weixin_53678904/article/details/126809119)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值