java - for 循环中的语句

标签 java loops

我正在编写一个使用 for 循环的小程序。

1 Scanner sc = new Scanner(System.in);
2 int T = sc.nextInt();
3 for(int j = 1; j < 2T-1; j+=2){
4     doSomething();
5 } 

但是,这个给了我一个错误。
错误消息显示:

javac Main.java -g
Main.java:12: error: ';' expected
            for(int j = 1; j < 2T-1; j+=2){
                                ^
Main.java:12: error: not a statement
            for(int j = 1; j < 2T-1; j+=2){
                                 ^
Main.java:12: error: ')' expected
            for(int j = 1; j < 2T-1; j+=2){
                                   ^
Main.java:12: error: ';' expected
            for(int j = 1; j < 2T-1; j+=2){
                                         ^
4 errors

我不太明白错误消息中的“声明”。

1) 为什么会产生错误?
2) 语句和表达式有什么区别?

最佳答案

Java 不是代数数学系统。这个

for(int j = 1; j < 2T-1; j+=2){

应该是

for(int j = 1; j < (2*T) - 1; j += 2){

2T-1 根本就不是一个有效的语句;变量名不能以数字开头,编译器检测到 2 将是一个有效的语句并正在传达这一点。然而,T-1 却出现在一个意想不到的地方。

关于java - for 循环中的语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36524813/

相关文章:

Java当前机器名和登录用户?

c++ - C++如何从数组中获取最长的素数序列

c# - 如何通过速记 "if-else"结果打破循环?

jquery - 重置并循环jquery动画

java - 为什么我的循环在数组中查找对象只在第一次起作用?

javascript - 将循环函数的值存储到变量中,javascript

java - 在线程内执行 HTTP 请求 - 错误

java - 如何自定义 keycloak AccountPages?

java - JPA中最大打开游标数超出异常(使用createNativeQuery删除记录)

java - 开始在现有项目上使用 Maven,而不丢失 GIT 历史记录