我从输入中得到一个总数和那么多字符串。
我的代码是:
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int tot = sc.nextInt();
for(int i=0; i<r; i++){
int L;
String str = sc.next();
if(L == str.length()) {
print(str);
}
}
}
private static void print(String str){
System.out.println("String is "+ str);
}
在此代码中,我的字符串在我输入后立即打印。
OutPut : 3
"ABC"
String is ABC
"ABCD"
String is ABCD
"ABCDE"
String is ABCDE
但我想要的是先取出所有输入然后打印;
前:
OutPut : 3
"ABC"
"ABCD"
"ABCDE"
String is ABC
String is ABCD
String is ABCDE
任何人都可以解释并帮助我修改我的字符串。
注意:我的想法是把所有东西都堆叠起来但又不知道打印谁。我知道我的结果是因为循环但不确定如何从那个
出来答案 0 :(得分:1)
将所有文字保存在一个全球可用的
中public static void main(String[] args) {
String str="";
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int tot = sc.nextInt();
for(int i=0; i<r; i++){
str += sc.next();
}
print(str);
}
private static void print(String str){
System.out.println("String is "+ str);
}
答案 1 :(得分:1)
有简单的方法可以做到。
在代码中使用StringBuilder:
...
StringBuilder sb = new StringBuilder();
for(int i=0; i<r; i++){
String str = sc.next();
sb.append(str);
}
return/print sb.toString();
...
答案 2 :(得分:0)
第一件事:将打印方法移出for循环,只需在收集输入后执行一次,然后使用String对象并附加输入,可以在每次循环迭代后使用换行符
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
int tot = sc.nextInt();
String str = "";
for (int i = 0; i < tot; i++) {
str += "String is: ";
str += sc.next();
str += "\n";
}
print(str);
sc.close();
}
private static void print(String str) {
System.out.println(str);
}
答案 3 :(得分:0)
我不能在for循环外使用print方法,因为对于每个字符串 我正在检查一个与其长度有关的条件。我更新了我的 题。你能再看看吗
因为您已经问过我已更新ΦXocę 웃 Пepeúpa ツ答案。 希望这可以帮助你...
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
int tot = sc.nextInt();
int counter = 0;//add a counter
String str = "";
for (int i = 0; i < tot; i++)
{
counter++;//increment for for each input
str += "String is: ";
str += sc.next();
str += "\n";
if(counter == tot)//if tot ia equal to total number of intake then print
{
print(str);
}
}
sc.close();
}
private static void print(String str)
{
System.out.println("String is "+ str);
}