for循环到while循环

我使用for循环以大写forms打印向后字母表,但我想知道如何使用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; } } 

 for (initialization; condition; increment) { } 

与:

 { initialization; while(condition) { // body increment; } } 

外部块为初始化参数创建block范围,我们也在for循环中获得。 但是,如果你在for-loop外声明你的for-loop变量,那么你可以省略该外部块。

现在,您可以将for循环映射到while循环。

在Java中有一种更简单的方法来反转字符串。

 public class StringReversalExample { public static void main(String[] args) { String alphabet = "abcdefghijklmnopqstuvwxyz"; String reversedString = new StringBuilder(alphabet).reverse().toString(); System.out.println(reversedString); } } 

尝试这个:

 public static void main(String[] args) { char[] alphabet = "abcdefghijklmnopqstuvwxyz".toCharArray(); int index = alphabet.length - 1; while (index >= 0) { System.out.println(alphabet[index--]); } } 

这是最有效的解决方案,具有最小的内存开销。

 x = alphabet.length() - 1; while( x > -1 ) { System.out.print( alphabet.charAt( x )); System.out.print( alphabet.toUpperCase() ); x--; }