title: c# when to use string and stringbuilder
body: <p>About string manipulation in C#, it’s correct to affirm:</p>
  
  <p>I tried for some but couldn't get for all. Please check if my justification is valid or not and help me with 3,4,5</p>
  
  <ol>
  <li><p>You should use StringBuilder no matter what, since it’s more optimized than the string type. – False (Although the StringBuilder class generally offers better performance than the String class, you should not automatically replace String with StringBuilder whenever you want to manipulate strings. Performance depends on the size of the string, the amount of memory to be allocated for the new string, the system on which your app is executing, and the type of operation. You should be prepared to test your app to determine whether StringBuilder actually offers a significant performance improvement).  </p></li>
  <li><p>String is immutable in C#, for each change on the string a new memory space is allocated with the new value. – True (String is an immutable type - that is, each operation that appears to modify a String object actually creates a new string).  </p></li>
  <li><p>StringBuilder is used for strings that change constantly.  </p></li>
  <li><p>StringBuilder should be used only with big enough strings.  </p></li>
  <li><p>String type is optimized to accommodate changes without much impact.  </p></li>
  <li><p>String is immutable in C#, but each change uses the same memory allocation space – False (String is an immutable type - that is, each operation that appears to modify a String object actually creates a new string).</p></li>
  </ol>