1.String和StringBuilder区别

这是java面试题吗?第一次遇到这种面试题,查阅了一下MSDN,如下。

String字符串是不可变,执行的字符串操作例程重复添加或删除操作到看起来是单个字符串可以精确显著的性能损失。 例如,下面的代码使用的随机数生成器使用 1000年个字符,范围从 0x0001 到 0x052F 中创建一个字符串。 尽管代码会使用字符串串联以将新字符追加到名为的现有字符串str,它实际创建一个新String为每个串联操作的对象。

using System;
using System.IO;
using System.Text;public class Example
{public static void Main(){Random rnd = new Random();string str = String.Empty;StreamWriter sw = new StreamWriter(@".\StringFile.txt", false, Encoding.Unicode);for (int ctr = 0; ctr <= 1000; ctr++) {str += Convert.ToChar(rnd.Next(1, 0x0530)); if (str.Length % 60 == 0)str += Environment.NewLine;          }                    sw.Write(str);sw.Close();}
}

你可以使用StringBuilder类而不是String类用于对字符串的值进行多个更改的操作。 与实例的不同String类,StringBuilder是可变的对象; 当你连接、 追加或删除从字符串的子字符串,在单个字符串上执行的操作。 完成后修改的值StringBuilder对象,可以调用其StringBuilder.ToString方法将其转换为字符串。 下面的示例替换String在前面的示例可用于连接到从 0x0001 到与 0x052F 的范围内的 1000 个随机字符StringBuilder对象。

using System;
using System.IO;
using System.Text;public class Example
{public static void Main(){Random rnd = new Random();StringBuilder sb = new StringBuilder();StreamWriter sw = new StreamWriter(@".\StringFile.txt", false, Encoding.Unicode);for (int ctr = 0; ctr <= 1000; ctr++) {sb.Append(Convert.ToChar(rnd.Next(1, 0x0530))); if (sb.Length % 60 == 0)sb.AppendLine();          }                    sw.Write(sb.ToString());sw.Close();}
}

转载于:https://www.cnblogs.com/mengxiangzhi/p/8660514.html

C#面试题(String和StringBuilder区别)相关推荐

  1. String StringBuffer StringBuilder区别与联系

    String     StringBuffer     StringBuilder String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且浪费大量 ...

  2. String,StringBuffer,StringBuilder区别

    String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全)  简 要的说, String 类型和 StringBuffer 类型的 ...

  3. String与StringBuilder区别总结

    String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全)  简要的说, String 类型和 StringBuffer 类型的主 ...

  4. String SringBuffer StringBuilder区别

    最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,StringBuilder的东西,现在整理一下. 关于这三个类在字符串处理中的位置不言而喻,那 ...

  5. string stringbuffer stringbuilder 区别

    共同点:String StringBufferStringBuilder 都是字符串相关函数,StringBuffer StringBuilder都是AbstractStringBuilder的子类 ...

  6. Java学习之String StringBuffer StringBuilder区别

    1.String:对象长度是不可变的,是线程安全. 2.StringBuffer:对象长度是可变的,是线程安全. 3.StringBuilder:对象长度是可变,不是线程安全. 转载于:https:/ ...

  7. 面试题:String StringBufere StringBuilder 不用看

    一.String 使用 private final char value[]来实现字符串存储 所以String对象创建之后就不能再修改此对象中存储的字符串内容,所以说String本质是字符数组char ...

  8. String、String Buffer、StringBuilder区别与比较

    类型 常量/变量 适用场景 性能 String 字符串常量 操作少量的数据   String Buffer 字符串变量(线程安全) 多线程操作大量数据 低 String Builder 字符串变量(非 ...

  9. 【翻译】Java中String, StringBuffer, StringBuilder的区别

    2019独角兽企业重金招聘Python工程师标准>>> String 是  Java 中最重要的类之一,并且任何刚开始做Java编程的人,都会 用String定义一些内容,然后通过著 ...

  10. Java中的String,StringBuffer,StringBuilder有什么区别?

    相信有很多同学都是经常使用String的,或者也或多或少的听说过StringBuffer,StringBuilder,那么在经常遇见的面试题中(标题),到底这三个的区别是什么呢?让我们来一探究竟! S ...

最新文章

  1. 源码分析 @angular/cdk 之 Portal
  2. 卷进大厂系列之LeetCode刷题笔记:移除元素(简单)
  3. Android 使用加速度传感器实现摇一摇功能及优化
  4. Day 4 - PB级规模数据的Elasticsearch分库分表实践
  5. C/C++实现sleep函数
  6. 从Config文件中读取节点的配置信息
  7. The 2016 ACM-ICPC Asia China-Final Contest Promblem D
  8. VelocityTracker简要
  9. cxf 服务端soap报文_使用Apache CXF开发SOAP Web服务
  10. 御龙在天手游怎么不显示服务器了,御龙在天手游进不去怎么办 闪退原因及解决办法...
  11. 作者:孙忠富(1957-),男,中国农业科学院农业环境与可持续发展研究所研究员。...
  12. 求朋友圈的个数 Friend Circles
  13. python求n的阶乘并输出身份信息_python编程求n的阶乘_使用Python编程的阶乘
  14. 如何用Java构建json对象
  15. piechart 文档 android,Android饼图 PieChart
  16. 【JavaScript】 模块 module
  17. Html和css 两张图片叠加一起
  18. WSL ubuntu xfce4桌面远程连接
  19. CLKing31-------分割字符串的AfxExtractSubString函数
  20. 王艳平老师——获取本地信息代码

热门文章

  1. ELK详解(十九)——Kibana绘图展示
  2. Linux之squirrelmail小松鼠客户端搭建
  3. Unity项目中的资源管理
  4. MetaMask/metamask-extension/mascara 的运行实现
  5. 使用Idea 配置maven
  6. TZOJ 1072: 编辑距离(动态规划)
  7. CentOS6.5菜鸟之旅:中文编辑器忍痛放弃Sublime
  8. Eclipse3.5的使用配置
  9. 使Iframe的宽高自适应,并且兼容IE 和NC浏览器- -
  10. go - json -struct