我已经编写了简单的随机短语生成器。但我不明白如何使用stringbuilder重写这个程序。我尝试使用"追加"。但它只是在整个字符串中添加了单词。
我的代码:
public static void main(String[] args){
String[] firstWord = {"one", "two","three"};
String[] secondWord = {"four", "five", "six"};
String[] thirdWord = {"seven", "eight", "nine"};
String[] fourthWord = {"ten", "eleven", "twelve"};
int oneLength = firstWord.length;
int secondLength = secondWord.length;
int thirdLength = thirdWord.length;
int fourthLength = fourthWord.length;
int rand1 = (int) (Math.random() * oneLength);
int rand2 = (int) (Math.random() * secondLength);
int rand3 = (int) (Math.random() * thirdLength);
int rand4 = (int) (Math.random() * fourthLength);
String phrase = firstWord[rand1] + " " + secondWord[rand2] + " "
+ thirdWord[rand3] + fourthWord[rand4];
System.out.println(phrase);
}
答案 0 :(得分:2)
像这样:
String phrase = new StringBuilder(firstWord[rand1]).append(" ")
.append(secondWord[rand2]).append(" ")
.append(thirdWord[rand3]).append(" ")
.append(fourthWord[rand4]).toString();
答案 1 :(得分:1)
您的示例已修改为使用字符串构建器。您可以在https://www.tutorialspoint.com/compile_java8_online.php
进行测试 import java.lang.StringBuilder;
public class HelloWorld{
public static void main(String []args){
String[] firstWord = {"one", "two","three"};
String[] secondWord = {"four", "five", "six"};
String[] thirdWord = {"seven", "eight", "nine"};
int oneLength = firstWord.length;
int secondLength = secondWord.length;
int thirdLength = thirdWord.length;
int rand1 = (int) (Math.random() * oneLength);
int rand2 = (int) (Math.random() * secondLength);
int rand3 = (int) (Math.random() * thirdLength);
String phrase = firstWord[rand1] + " " + secondWord[rand2] + " "
+ thirdWord[rand3];
StringBuilder sb = new StringBuilder();
sb.append(firstWord[rand1]);
sb.append(" ");
sb.append(secondWord[rand2]);
sb.append(" ");
sb.append(thirdWord[rand3]);
String phraseSb = sb.toString();
System.out.println("Plus Operator: " + phrase);
System.out.println("String Builder: " + phraseSb);
}
}