我正在尝试使用 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);
}
只是为了完整性,这也是可能的
for (int i = 32; i <= 255; i = (i == 127 ? 160 : i + 1)) {
    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;
    }
}
或者像函数式语言一样将测试添加到循环中:
for(int i = 32; i <= 255; i++) if (i < 128 || i > 159) {
    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 语句。-
for(int i = 32; i <= 255; i++) {
    if (i < 128 || i > 159) {
        char ascii = (char) i;
        System.out.println(ascii);
    }
}
我会做两个循环:
    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; counter<=255; i++){
    if (counter>=128 && counter<=159) {
    continue;
    }
char ascii = (char) i;
System.out.println(ascii);
}