我试图跳过使用for循环的值。类似于Java - 跳过for循环中的值
for(int i = 32; i <= 255 - but skip 128 to 159; i++) {
char ascii = (char) i;
System.out.println(ascii);
}
有什么建议吗?谢谢!
我试图跳过使用for循环的值。类似于Java - 跳过for循环中的值
for(int i = 32; i <= 255 - but skip 128 to 159; i++) {
char ascii = (char) i;
System.out.println(ascii);
}
有什么建议吗?谢谢!
使用此:
for(int i = 32; i < 256; i++) {
if(i == 128) i = 160;
//...
}
这比简单地继续。你不想迭代128到159;你会浪费时间。
您可以跳过您不想要的元素,像这样:
for(int i = 32; i <= 255; i++) {
if (i >= 128 && i <= 159) continue;
char ascii = (char) i;
System.out.println(ascii);
}
或一分为二的循环,像这样的:在你的循环的开始
for(int i = 32; i <= 127; i++) {
char ascii = (char) i;
System.out.println(ascii);
}
for(int i = 160; i <= 256; i++) {
char ascii = (char) i;
System.out.println(ascii);
}
您可以添加一个if语句您loop.-
for(int i = 32; i <= 255; i++) {
if (i < 128 || i > 159) {
char ascii = (char) i;
System.out.println(ascii);
}
}
for(int i = 32; i <= 255 - but skip 128 to 159; i++) {
char ascii = (char) i;
System.out.println(ascii);
if(i == 127) {
i = 160;
}
}
我会做两个环路内:
int MIN = 128;
int MAX = 159;
for(int i = 32; i < MIN ; i++) {
char ascii = (char) i;
System.out.println(ascii);
}
for(int i = MAX + 1; i < 255; i++){
char ascii = (char) i;
System.out.println(ascii);
}
或者测试添加到像函数式语言的循环:
for(int i = 32; i <= 255; i++) if (i < 128 || i > 159) {
char ascii = (char) i;
System.out.println(ascii);
}
只是为了完整性,这也是可能
for (int i = 32; i <= 255; i = (i == 127 ? 160 : i + 1)) {
char ascii = (char) i;
System.out.println(ascii);
}
下面是一些代码:
public static void main(String[] args) {
for(int i = 32; i <= 255; i++) {
if (i < 128 || i > 159) {
char ascii = (char) i;
System.out.println(ascii);
}
}
}
没有,你用if语句_START_。在循环的最开始,'if(i == 128)i = 160;'。这样,一旦达到128,它就会变成160。 – Zyerah 2013-04-08 01:27:37
谢谢,这工作完美! – 0101011 2013-04-08 01:57:20