Java 生成特定输出的嵌套循环
我刚刚开始学习java,正在尝试生成以下输出:Java 生成特定输出的嵌套循环,java,loops,for-loop,nested-loops,Java,Loops,For Loop,Nested Loops,我刚刚开始学习java,正在尝试生成以下输出: $££$$$££££$$$$$ $£$$$£$$$ 我目前的尝试如下: for (i = 1; i < 3; i++) { System.out.print("$£"); for (j = 1; j < i + 2; ++j) { System.out.print("$"); 更新了下面的代码 char temp = '$'; for (int i = 1; i < 6; i++) {
$££$$$££££$$$$$
$£$$$£$$$
我目前的尝试如下:
for (i = 1; i < 3; i++) {
System.out.print("$£");
for (j = 1; j < i + 2; ++j) {
System.out.print("$");
更新了下面的代码
char temp = '$';
for (int i = 1; i < 6; i++) {
for (int j = 0; j < i; ++j) {
System.out.print(temp);
}
if (temp == '$') {
temp = '£';
}
else {
temp = '$';
}
}
chartemp='$';
对于(int i=1;i<6;i++){
对于(int j=0;j
试试这个,我已经更新了你的代码。如果有什么不清楚的地方,请随时询问
输出:
$英镑$$英镑$$$$$
您应该将其视为“人类将如何做”,然后尝试在代码中使用相同的方法 那么人类应该做什么:
- 写入1x$
- 写2x
- 写3x$
- 写4x
让howMuchTimes=5;
常量字符=“$”;
常量字符=';
让actualChar=charA;
让输出=“”;
对于(设i=0;i 控制台日志(输出)代码>当您希望轻松更改字符和/或它们出现的次数时,可以执行以下操作:
char odd = '$';
char even = '£';
int amount = 6;
for (int i = 1; i <= amount; i++) {
for (int j = 0; j < i; j++) {
System.out.print(i % 2 == 0 ? even : odd);
}
}
您可以将要打印的字符放入一个数组中,当您在该数组上循环时,可以使用索引和余数运算符在字符之间切换。
然后,您只需要有一个嵌套循环,该循环将打印字符重复当前索引的次数
final String[] characters = {"£", "$"};
for (int i = 1; i <= 5; i++)
for (int j = 0; j < i; j++)
System.out.print(characters[i % characters.length]);
您可以使用一个循环,只要您知道Java中有许多方法可以重复字符串,因此如果您使用Java 8,您可以使用:
爪哇8
简单Java代码
或者您可以使用循环创建自己的repeat方法,您的代码可以是:
public static void main(String[] args) {
int i = 1;
for (i = 1; i < 4; i+=2) {
System.out.print(repeatString("$", i));
System.out.print(repeatString("£", i));
}
System.out.print(repeatString("$", i));
}
public static String repeatString(String s, int nbr) {
StringBuilder result = new StringBuilder("");
for (int i = 0; i < nbr; i++) {
result.append(s);
}
return result.toString();
}
@Socowi我的错误(错误点击)。固定的。谢谢。我很难想象如何使用嵌套循环来实现这一点。只需一个循环即可轻松完成。您不需要嵌套循环,您需要检查当前循环索引是否为偶数(i%2==0
),如果是,请打印英镑符号*i,否则,请打印美元符号*i。谢谢!很容易跟在你后面!非常感谢。为什么不使用temp=temp=='$'?'£':'$';代码>?
final String[] characters = {"£", "$"};
for (int i = 1; i <= 5; i++)
System.out.print(characters[i % characters.length].repeat(i));
int i = 1;
for (i = 1; i < 4; i+=2) {
System.out.print(String.join("", Collections.nCopies(i, "$")));
System.out.print(String.join("", Collections.nCopies(i + 1, "£")));
}
System.out.print(String.join("", Collections.nCopies(i, "$")));
int i = 1;
for (i = 1; i < 4; i+=2) {
System.out.print("$".repeat(i));
System.out.print("£".repeat(i + 1));
}
System.out.print("$".repeat(i));
public static void main(String[] args) {
int i = 1;
for (i = 1; i < 4; i+=2) {
System.out.print(repeatString("$", i));
System.out.print(repeatString("£", i));
}
System.out.print(repeatString("$", i));
}
public static String repeatString(String s, int nbr) {
StringBuilder result = new StringBuilder("");
for (int i = 0; i < nbr; i++) {
result.append(s);
}
return result.toString();
}
$££$$$££££$$$$$