我正在使用for
循环以大写字母打印向后字母表,但我想知道如何使用while
循环执行相同的操作,我不是很擅长。
String alphabet = "abcdefghijklmnopqstuvwxyz";
int x = 0;
for(x = alphabet.length() - 1; x > -1; x--) {
System.out.print(alphabet.charAt(x));
System.out.print(alphabet.toUpperCase());
}
我还需要在它到达A时终止它。认为它是这样的,但我不知道如何使它向后循环。我非常感谢你的帮助!
while(alphabet.length() < 26) {
System.out.print(alphabet.charAt(x));
System.out.print(alphabet.toUpperCase());
if(x == A) {
break;
}
}
答案 0 :(得分:4)
for (initialization; condition; increment) {
}
与:
相同{
initialization;
while(condition) {
// body
increment;
}
}
外部块为初始化参数创建block
范围,我们也在for循环中获得。但是,如果您在循环外声明for-loop
变量,则可以省略该外部块。
现在您可以将for循环映射到while循环。
答案 1 :(得分:2)
试试这个:
public static void main(String[] args) {
char[] alphabet = "abcdefghijklmnopqstuvwxyz".toCharArray();
int index = alphabet.length - 1;
while (index >= 0) {
System.out.println(alphabet[index--]);
}
}
这是一种最有效的解决方案,具有最小的内存开销。
答案 2 :(得分:2)
在Java中有一种更简单的方法来反转字符串。
public class StringReversalExample {
public static void main(String[] args) {
String alphabet = "abcdefghijklmnopqstuvwxyz";
String reversedString = new StringBuilder(alphabet).reverse().toString();
System.out.println(reversedString);
}
}
答案 3 :(得分:0)
x = alphabet.length() - 1;
while( x > -1 )
{
System.out.print( alphabet.charAt( x ));
System.out.print( alphabet.toUpperCase() );
x--;
}