在Java中将字符串转换为StringBuilder

12

我有一个返回字符串的方法,但我想要在方法内部使用StringBuilder来处理数据,然后将其转换为字符串,那么我该怎么做呢?

  public String[][] getDataOfJD(List<JobDescriptionField> jdFields) {
  int i = 0;
  String [][] data = new String[jdFields.size()][];
  for(JobDescriptionField field : jdFields) {
      if (i > 0){
          String messages = "";
          for (String message : field.getMessages()){
             messages += message;
          }
     data [i] = new String[]{field.getTitle(), field.getField(), messages, field.getScore() + ""};
  }
    i++;
    score = score + field.getScore();
  }
  return data;
  }

从上面的例子可以看出,field.getTitle()field.getField()都是字符串类型。如果我想要使用StringBuilder来存储数据并将其转换为字符串,但如果我尝试使用return data.toString这样的方式,会出现错误。


1
请在你的问题中同时分享你的尝试和错误信息。 - TimoStaudinger
还要注意的是,在Java中,StringBufferStringBuilder是两个(类似但)不同的类。 - TimoStaudinger
抱歉,实际上我想要在StringBuilder中使用数据变量,而不是StringBuffer。如果我将数据转换为字符串,则在{field.getTitle(),field.getField(),messages,field.getScore()+“”};这一行会出现错误,例如不兼容类型。需要StringBuilder但它是string。 - namrata shahade
你想让 StringBuilder 做什么?只是简单地将所有字符串连接起来,没有任何分隔符吗?那看起来会很糟糕。--- "我试过了" 那请展示一下你尝试的代码,这样我们才能帮助你找出错误所在。 - Andreas
问题现在解决了吗?如果没有,你期望的输出格式是什么? - ujulu
4个回答

17

6

将字符串转换为StringBuilder

String someText = "something...";
StringBuilder sb = new StringBuilder(someText);

无可挑剔的答案! - Gaurav

1
String str = "rahul";
System.out.println(str.getClass().getName());   
StringBuilder sb1 = new StringBuilder(str); // way 1
StringBuilder sb2 = new StringBuilder(); // way 2
sb2.append(str);
System.out.println(sb1.getClass().getName());
System.out.println(sb2.getClass().getName());

我希望上面的代码可以解释一切。


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接