我想使用LOOP将一系列相同的字符串从A类中的方法传递到B类中的方法。下面是我的新手代码,但无法传递。谢谢!
import java.util.UUID;
public class ClassA {
public String ClassAMethod (String data){
String theString;
StringBuilder builder = new StringBuilder();
ClassA classA = new ClassA();
int k=0;
do {
k++;
String generated = classA.generateString(data);
builder.append(generated);
theString=builder.toString();theString+=theString;
return theString;
} while(k<5);
}
public String generateString(String genText ){
genText = (UUID.randomUUID().toString());
return genText;
}
}
public class ClassB {
private static String data;
public static void main(String arg[]) {
ClassA classA = new ClassA();
String sentString = classA.ClassAMethod(data);
System.out.println(sentString);
}
}
答案 0 :(得分:1)
主要错误是您在循环中returning
,您想要做的就是在它之后返回。
同样,当你在classA
时,你不应该实例化另一个classA
对象。
尝试
public String ClassAMethod (){
StringBuilder builder = new StringBuilder();
int k=0;
do {
k++;
String generated = this.generateString();
builder.append(generated);
} while(k<5);
return builder.toString ();
}
修改强>
如上面的@Andreas所述,generateString()
不需要传递任何参数,因此更改为
public String generateString(){
return (UUID.randomUUID().toString());
}