java - 请帮助检查我的逻辑

标签 java loops for-loop char

我有一个循环,它不会在应该停止的时候停止,而且它只发生在我的生产服务器上,而不是发生在我的开发服务器上。所以我要疯了。

//objectName can be any value from [a-}], 
char objectName = 'a'; //objectName is initialized with value 'a'

//before objectName hit the line below, it was increment objectName++; until the value of 
//objectName = '}'
for( char c = objectName; c <= 'z'; c++ ){
    //do something
}

objectName 可以是任何字符,但就我而言,我知道我的 objectName 将是“}”字符,从技术上讲,它比“z”要多。所以我不明白的是为什么我的循环仍在执行。

有趣的是,我们有使用 JAVA 1.6.0_30 的测试服务器,我们尝试在那里进行测试,并且运行得很好。

我的开发服务器使用:java 1.6.0_45 我的产品服务器使用:java 1.6.0_30

如果您发现我的逻辑有任何问题,请告诉我,任何会使我的循环处于 Activity 状态的情况,即使它不应该随意让我知道。

最佳答案

我不是专家,所以我在这里可能是错的,但使用字符来迭代 for 循环对我来说看起来很陌生,而且可能不是最好的做法。

我建议使用字符数组/(数组)列表,并以这种方式迭代列表,或者像 @Chris 所说的那样,通过获取字符的数值

for(int i = Character.getNumericValue(objectName); i <= Character.getNumericValue('z'); i++)
{
    //System.out.println("test");
}

就像我说的,我不是专家,但使用数字来迭代 for 循环似乎是一种更好的做法,或者至少是一种更稳定的做法。

关于java - 请帮助检查我的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23748242/

相关文章:

Python pandas 检查单元格中列表的最后一个元素是否包含特定字符串

java - 为什么处理器执行这两个 for 循环(用 Java 编码)需要相同的时间?

java - 使用执行查询在左连接子句中添加 =value

java - Anylogic - 从占用的资源中获取资源池

php词过滤功能?

Python `for` 语法 : block code vs single line generator expressions

java - 在 String 中将 char 设为大写

java - Jar(使用gradle任务生成)中的Java文件无法在工作空间中访问

java - ServerSocket中setReuseAddress的作用是什么?

c++ - 检查哪个模块最接近