我有這個問題,我正在努力完成。
撰寫一個方法,接收一個字串和一個整數,然后在同一行中多次將字串列印到控制臺,用空格、破折號、星號、破折號和另一個空格分隔。
示例呼叫:
myMethod("Matthew", 3);
示例輸出:
Matthew -*- Matthew -*- Matthew
但是,我撰寫的方法不會列印出此輸出。我是 Java 新手。因此,非常感謝您的幫助。
/**
*
*/
package myloops;
import java.util.*;
/**
* @author
*
*/
public class Quiz {
/**
*
* @param name
* @param num
*/
public static void myMethod(String name, int num) {
for (int loop = 1; loop <= num; loop ) {
if (num%2 != 0) {
System.out.print("-*-");
} System.out.print(name);
}
}//end of other method
/**
* @param args
*/
public static void main(String[] args) {
myMethod("Matthew", 3);
} // end of main method
} // end of parent class
uj5u.com熱心網友回復:
SO 有許多類似問題的答案示例,這個示例基于此處的答案:https : //stackoverflow.com/a/6857936/2711811 (>= java 8)
public static void myMethod(String name, int num) {
System.out.println(String.join(" -*- ", Collections.nCopies(num, name)));
}
uj5u.com熱心網友回復:
該字串*-*必須在除第一個之外的名稱的每次重復之前,因此您可以自己列印第一個然后回圈遍歷其余的,或者回圈遍歷它們并檢查它是否是第一個:
public static void myMethod(String name, int num) {
for (int loop = 0; loop < num; loop ) {
if (loop > 0 ) {
System.out.print(" -*- ");
}
System.out.print(name);
}
}
public static void main(String[] args) {
myMethod("Matthew", 3);
}
輸出: Matthew -*- Matthew -*- Matthew
uj5u.com熱心網友回復:
你的代碼有幾個問題
- num 永遠不會改變
- num%2 != 0 如果 num 是奇數則回傳,這與此問題無關。
因為除了最后一個之外,您要在單詞 Matthew 之后列印*,所以您應該使用下一個代碼:
for (int loop = 0; loop < num; loop ) {
System.out.print(name);
if (loop != num-1 ) {
System.out.print(" -*- ");
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/350586.html
上一篇:如何在模塊中匯出正則運算式以及如何使用它來測驗某些東西
下一篇:構建動態字串以過濾休息呼叫
