[英]Using of Loops then If and Else
我有一個需要運行的 ToString() 方法,但需要使用循環而不是 if 和 else 語句。 我該怎么做?
public String toString()
{
if (collectedDots == 0)
return "Player[]"+"("+x+","+Math.abs(y)+")";
else if (collectedDots == 1)
return "Player["+"*"+"]"+"("+x+","+Math.abs(y)+")";
else if (collectedDots == 2)
return "Player["+"**"+"]"+"("+x+","+Math.abs(y)+")";
else
return "Player["+"***"+"]"+"("+x+","+Math.abs(y)+")";
}
你可以使用 switch 而不是if
switch(collectedDots )
{
case 0: return "Player[]"+"("+x+","+Math.abs(y)+")";
case 1: return "Player["+"*"+"]"+"("+x+","+Math.abs(y)+")";
case 2: return "Player["+"**"+"]"+"("+x+","+Math.abs(y)+")";
default: return "Player["+"***"+"]"+"("+x+","+Math.abs(y)+")";
}
編寫一個循環,生成一串collectedDots
星號:
String asterisks = "";
// Here is your loop. It iterates "collectedDots" times
for (int i = 0 ; i != collectedDots ; i++) {
// Append an asterisk to the string "asterisks"; I assume that you know how to do that
}
有了asterisks
字符串,其余的toString
就變得微不足道了:
return "Player["+asterisks+"]"+"("+x+","+Math.abs(y)+")";
花更多時間查看您的輸出。
你的老師在課堂上教過如何打印以下圖案嗎?
(沒有)
一種
機管局
AAA
public static void main(String[] args) {
StringBuilder stringBuilder = new StringBuilder();
for(int i = 0; i < 4; i++) {
System.out.println(stringBuilder.toString());
stringBuilder.append("*");
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.