String和string的区别
答案:2 悬赏:40 手机版
解决时间 2021-01-26 14:41
- 提问者网友:树红树绿
- 2021-01-25 14:34
String和string的区别
最佳答案
- 五星知识达人网友:大漠
- 2021-01-25 15:10
String可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了存储数值不可改变的字符串。
StringBuilder是线程不安全的,运行效率高,如果一个字符串变量是在方法里面定义,这种情况只可能有一个线程访问它,不存在不安全的因素了,则用StringBuilder。如果要在类里面定义成员变量,并且这个类的实例对象会在多线程环境下使用或者变量的内容不断变化,那么最好用StringBuffer。
StringBuilder是线程不安全的,运行效率高,如果一个字符串变量是在方法里面定义,这种情况只可能有一个线程访问它,不存在不安全的因素了,则用StringBuilder。如果要在类里面定义成员变量,并且这个类的实例对象会在多线程环境下使用或者变量的内容不断变化,那么最好用StringBuffer。
全部回答
- 1楼网友:低血压的长颈鹿
- 2021-01-25 15:43
当你只定义一个str而不为其分配内存时用string str=null,但是在接下来你使用它之前必须为它赋值如str=“xxxx”也就是为它初始化,不然程序运行时可能会引发空指针异常 而string str= string.empty是定义和初始化放在了一起它实际是等价于 string str=null;str=""; 具体使用时,如果你确定在使用前会给str赋值就用string str=null,否则用string str= string.empty 用string.empty表示空字符串,不要用””。string.empty的定义为public static readonly string empty,编译时会转化成””,但是string.empty是一个常数,””是一个字符串对象,对字符串对象进行运算总是很慢的。(说法值得考证)
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯