StringWriter — Java Technical Interview Questions & Answers

StringWriter

StringWriter

  • StringWriter is about reading or writing data outside the program — files, bytes, or characters. Byte streams (InputStream/OutputStream) handle raw bytes. Character streams (Reader/Writer) handle text.
  • For StringWriter, always close resources. Prefer try-with-resources so close happens even if an error occurs. Buffered streams are faster for many small reads.
  • StringWriter viva: serialization turns an object into bytes. transient fields are skipped. Don’t serialize secrets without a plan.
  • Let's take this on the board with one tiny Main class — no extra files. StringWriter — shows length, substring, case change, and equalsIgnoreCase. Start from main, go line by line, and stop at each print. That output is the proof for StringWriter.

Technical Interview Tip: == vs equals() on String is a classic trap.

Code Examples for StringWriter

Example

// String methods
public class Main {
  public static void main(String[] args) {
    String s = "PrepPilot";
    System.out.println(s.length());
    System.out.println(s.substring(0, 4));
    System.out.println(s.toUpperCase());
    System.out.println("prep".equalsIgnoreCase("PREP"));
  }
}

StringWriter — shows length, substring, case change, and equalsIgnoreCase.

How to Explain StringWriter to an Interviewer

What is StringWriter?

StringWriter — I/O = read/write outside the program (file, bytes, text). StringWriter — byte streams for bytes, Reader/Writer for text, close with try-with-resources. StringWriter — buffered streams are faster for many small reads.

Why do we use StringWriter in Java?

Makes the program clearer or safer StringWriter — I/O = read/write outside the program (file, bytes, text).

Write one small example of StringWriter.

Show syntax Say what prints

What mistake do beginners make with StringWriter?

Only the name, no example StringWriter — forgetting to close, or serializing secrets.

Where is StringWriter used in a real program?

Day-to-day Java code