各大网站ip地址上海展览公司
web/
2025/9/30 14:33:50/
文章来源:
各大网站ip地址,上海展览公司,网络推广的方式和途径有哪些,建设银行网站是什么stringstring是常用的类型#xff0c;它具有不可变性#xff1a;就是一旦赋值#xff0c;就不可变#xff0c;如果再赋值 #xff0c;就重新开辟内存空间#xff1b;保留性#xff1a;如果一个字符串存在#xff0c;另一个与其相同#xff0c;他们会指向同一个地址它具有不可变性就是一旦赋值就不可变如果再赋值 就重新开辟内存空间保留性如果一个字符串存在另一个与其相同他们会指向同一个地址不会再开辟新内存空间下面的Demo作个证明public unsafe void Run()
{string a abcd;string b abcd;fixed (char* p a){Console.WriteLine(原a字符串地址 0x{0:x}, (int)p);}fixed (char* p b){Console.WriteLine(原b字符串地址 0x{0:x}, (int)p);}b befg;fixed (char* p b){Console.WriteLine(新b字符串地址 0x{0:x}, (int)p);}
}
结果string还提供了一些其他方法:string.Empty和是一样的;string.IsNullOrEmpty(string)判断一个字符串null或返回truestring.IsNullOrWhiteSpace(string) 判断一个字符串null或或 返回true判断Null如果有这样一段代码var appOrder new AppOrder();
if (appOrder null)
{WriteLine(appOrder null:appOrder is null);
}
你觉结果会输出吗常理是不会输出appOrder null:appOrder is null但真正的结果是还真不一定这里不能被new AppOrder欺骗了因为还要看AppOrder对的理解是什么。如果代码是这么写class NullDemo : Demo{public void Run(){var appOrder new AppOrder();if (appOrder null){WriteLine(appOrder null:appOrder is null);} }}class Order{public static bool operator (Order left, Order right){return true;}public static bool operator !(Order left, Order right){return true;} }
class AppOrder : Order
{
}
appOrder null:appOrder is null还真能输出因为被赋予了永恒相等看起来判断为null用不靠谱那用什么呢 if (appOrder is null){WriteLine(appOrder is null:appOrder is null);}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/84500.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!