{
public static void main(String args[])
{
int a=0;
for(int i=0,System.out.println("a");i<10;i++) //居然编译出错了。
;
}
}
27 个解决方案
#1
int i=0,System.out.println("a");
执行的是
int i = 0;
int System.out.println("a");
这样当然编译报错了
int a = 0, i;
用for(i = 0, System.out.println("a"); i < 10; i++)
{
//
}
执行的是
int i = 0;
int System.out.println("a");
这样当然编译报错了
int a = 0, i;
用for(i = 0, System.out.println("a"); i < 10; i++)
{
//
}
#2
楼上的,回答的已经很清楚啦啊。
#3
没有什么居然,是必然
在变量声明的位置,怎么能写输出呢
在变量声明的位置,怎么能写输出呢
#4
int i=0;
if(3>2)
i=3,System.out.println(i);
这个为啥报错了。。。半个小时后结贴。。。。
if(3>2)
i=3,System.out.println(i);
这个为啥报错了。。。半个小时后结贴。。。。
#5
class A
{
public static void main(String args[])
{
int a=0;
for(int i=0,System.out.println("a");i<10;i++) //int i =0,System.out.println("a")错了
;
}
}
楼主为什么要写成这样呢???????
#6
class A
{
public static void main(String args[])
{
int i=0;
if(3>2)
i=3,System.out.println(i);
}
}
这个为什么出错了。。。。晕了。。。
#7
i=3,System.out.println(i);
明明是两个不同的语句为什么一定要写在一起呢?
除非这样用:int i = 3, k = 5; 这个等效于 int i = 3; int k = 5;
我们甚至能写成这样:
int[] i = new int[2], k[] = new int[2][3];
但是这种写法一般是不推荐使用的,理由很简单阻碍代码阅读,因此应该改成:
int[] i = new int[2];
int[][] k = new int[2][3];
明明是两个不同的语句为什么一定要写在一起呢?
除非这样用:int i = 3, k = 5; 这个等效于 int i = 3; int k = 5;
我们甚至能写成这样:
int[] i = new int[2], k[] = new int[2][3];
但是这种写法一般是不推荐使用的,理由很简单阻碍代码阅读,因此应该改成:
int[] i = new int[2];
int[][] k = new int[2][3];
#8
,是定义分隔符,不是语句执行分割符。
#9
晕,最基本的语法问题,实在搞不懂的话应该好好看看书啦!!
#10
for的括号里面才可以用逗号分割语句
其它地方应该用分号 <--------应该是常识吧.....难道lz写c/c++的时候也可以用逗号分割语句的?
#11
class A
{
public static void main(String args[])
{
int a=0;
for(int i=0,System.out.println("a");i<10;i++) //居然编译出错了。
;
}
}
这样编译当然会出错啦,循环休没有内容啊
{
public static void main(String args[])
{
int a=0;
for(int i=0,System.out.println("a");i<10;i++) //居然编译出错了。
;
}
}
这样编译当然会出错啦,循环休没有内容啊
#12
我敢保证C里面是可以这样写的。。。
#13
#include<stdio.h>
void main()
{
int a,b;
float c;
if(3>2)
a=3,printf(" ok "),b=4,c=5.0,printf(" %8.6f%\n\n",c);
}
这个程序在C里是调试正确的。
我很谢谢大家,但也不希望,大家没有调查就说C里是不行的。
class A
{
public static void main(String args[])
{
int i=0;
if(3>2)
i=3,System.out.println(i); //可是JAVA这里会编译出错的。
}
}
#14
汗,你已经证明了 i=3,System.out.println(i); //可是JAVA这里会编译出错的。
java不能这么用。还问什么呢?
java不能这么用。还问什么呢?
#15
即使在c/c++里面理解,這也是錯的啦
i=3,System.out.println(i);你逗號運算符的結果取最後一個,但你Sytem.out.println()哪有返回整型值給i啊
i=3,System.out.println(i);你逗號運算符的結果取最後一個,但你Sytem.out.println()哪有返回整型值給i啊
#16
这个只是规定问题,你要是牛的话,可以自己写如何编译代码;
int i=3; 用分号是一句结束
int i=3,j=3; 中间用逗号是定义两个 int i=3; int j=3;
谢谢。
int i=3; 用分号是一句结束
int i=3,j=3; 中间用逗号是定义两个 int i=3; int j=3;
谢谢。
#17
可谁又能解释在java里以下的逗号表达式可以用呢????????
class A
{
public static void main(String args[])
{
int a = 0, i;
for(i = 0, System.out.println("a"); i < 10; i++)
{ }
}
}
#18
int i=0;
if(3>2)
i=3,System.out.println(i);
條件判斷后,如果不用{ ... }的話,只能用一個語句,
i=3,System.out.println(i);是兩個語句。
java是不會自動幫你把其中的“,”變成“;”的。
if(3>2)
i=3,System.out.println(i);
條件判斷后,如果不用{ ... }的話,只能用一個語句,
i=3,System.out.println(i);是兩個語句。
java是不會自動幫你把其中的“,”變成“;”的。
#19
不懂为什么可以执行,for循环当中的“,”号和外边的语义不一样
#20
c/c++可以这么写
JAVA我认为是把c/c++容易出错的部分都出错了。
JAVA我认为是把c/c++容易出错的部分都出错了。
#21
牛角尖的问题
还没见过把out语句写在这的
还没见过把out语句写在这的
#22
不要冠以牛角尖掩饰不知道。
只是相信不同意见,在学习中,才是向上的动力。
因为大家都从一无所知,到知的。
只是不知道
for里边的语句规定,
与if为什么不一样。
在C里是肯定一定的,见我的13楼
只是相信不同意见,在学习中,才是向上的动力。
因为大家都从一无所知,到知的。
只是不知道
for里边的语句规定,
与if为什么不一样。
在C里是肯定一定的,见我的13楼
#23
無語...將c和java來比,有何意義?C中有逗號表達式,java中沒有這東西,只是for里可以允許以逗號分隔語句
http://www.java-samples.com/showtutorial.php?tutorialid=276
http://www.java-samples.com/showtutorial.php?tutorialid=276
#24
这语法是正确的,java支持逗号表达式,在java的for循环初始化时逗号表达式必须是同一类型的,显然i = 0与System.out.println("a")都不是声明变量,因此不会有错,而楼主提到的C语法其实和java基本相同的,之所以C语言可以通过是因为在C语言中任何函数都有返回值,void的值就是数字0,而java中的void是特殊的空值,并非数字
#25
一个int类型、以String类型,当然不支持了。
好比声明,int i=5,j="10000000"; 这个当然不支持了。
int i=5,j=10000000; 这个显然对极了。
好比声明,int i=5,j="10000000"; 这个当然不支持了。
int i=5,j=10000000; 这个显然对极了。
#26
一个int类型、一个String类型,当然不支持了。
好比声明,int i=5,j="10000000"; 这个当然不支持了。
int i=5,j=10000000; 这个显然对极了。
好比声明,int i=5,j="10000000"; 这个当然不支持了。
int i=5,j=10000000; 这个显然对极了。
#27
C里有逗号表达式,如a=(2,3,4)这样的。但java里不支持,会报错
#1
int i=0,System.out.println("a");
执行的是
int i = 0;
int System.out.println("a");
这样当然编译报错了
int a = 0, i;
用for(i = 0, System.out.println("a"); i < 10; i++)
{
//
}
执行的是
int i = 0;
int System.out.println("a");
这样当然编译报错了
int a = 0, i;
用for(i = 0, System.out.println("a"); i < 10; i++)
{
//
}
#2
楼上的,回答的已经很清楚啦啊。
#3
没有什么居然,是必然
在变量声明的位置,怎么能写输出呢
在变量声明的位置,怎么能写输出呢
#4
int i=0;
if(3>2)
i=3,System.out.println(i);
这个为啥报错了。。。半个小时后结贴。。。。
if(3>2)
i=3,System.out.println(i);
这个为啥报错了。。。半个小时后结贴。。。。
#5
class A
{
public static void main(String args[])
{
int a=0;
for(int i=0,System.out.println("a");i<10;i++) //int i =0,System.out.println("a")错了
;
}
}
楼主为什么要写成这样呢???????
#6
class A
{
public static void main(String args[])
{
int i=0;
if(3>2)
i=3,System.out.println(i);
}
}
这个为什么出错了。。。。晕了。。。
#7
i=3,System.out.println(i);
明明是两个不同的语句为什么一定要写在一起呢?
除非这样用:int i = 3, k = 5; 这个等效于 int i = 3; int k = 5;
我们甚至能写成这样:
int[] i = new int[2], k[] = new int[2][3];
但是这种写法一般是不推荐使用的,理由很简单阻碍代码阅读,因此应该改成:
int[] i = new int[2];
int[][] k = new int[2][3];
明明是两个不同的语句为什么一定要写在一起呢?
除非这样用:int i = 3, k = 5; 这个等效于 int i = 3; int k = 5;
我们甚至能写成这样:
int[] i = new int[2], k[] = new int[2][3];
但是这种写法一般是不推荐使用的,理由很简单阻碍代码阅读,因此应该改成:
int[] i = new int[2];
int[][] k = new int[2][3];
#8
,是定义分隔符,不是语句执行分割符。
#9
晕,最基本的语法问题,实在搞不懂的话应该好好看看书啦!!
#10
for的括号里面才可以用逗号分割语句
其它地方应该用分号 <--------应该是常识吧.....难道lz写c/c++的时候也可以用逗号分割语句的?
#11
class A
{
public static void main(String args[])
{
int a=0;
for(int i=0,System.out.println("a");i<10;i++) //居然编译出错了。
;
}
}
这样编译当然会出错啦,循环休没有内容啊
{
public static void main(String args[])
{
int a=0;
for(int i=0,System.out.println("a");i<10;i++) //居然编译出错了。
;
}
}
这样编译当然会出错啦,循环休没有内容啊
#12
我敢保证C里面是可以这样写的。。。
#13
#include<stdio.h>
void main()
{
int a,b;
float c;
if(3>2)
a=3,printf(" ok "),b=4,c=5.0,printf(" %8.6f%\n\n",c);
}
这个程序在C里是调试正确的。
我很谢谢大家,但也不希望,大家没有调查就说C里是不行的。
class A
{
public static void main(String args[])
{
int i=0;
if(3>2)
i=3,System.out.println(i); //可是JAVA这里会编译出错的。
}
}
#14
汗,你已经证明了 i=3,System.out.println(i); //可是JAVA这里会编译出错的。
java不能这么用。还问什么呢?
java不能这么用。还问什么呢?
#15
即使在c/c++里面理解,這也是錯的啦
i=3,System.out.println(i);你逗號運算符的結果取最後一個,但你Sytem.out.println()哪有返回整型值給i啊
i=3,System.out.println(i);你逗號運算符的結果取最後一個,但你Sytem.out.println()哪有返回整型值給i啊
#16
这个只是规定问题,你要是牛的话,可以自己写如何编译代码;
int i=3; 用分号是一句结束
int i=3,j=3; 中间用逗号是定义两个 int i=3; int j=3;
谢谢。
int i=3; 用分号是一句结束
int i=3,j=3; 中间用逗号是定义两个 int i=3; int j=3;
谢谢。
#17
可谁又能解释在java里以下的逗号表达式可以用呢????????
class A
{
public static void main(String args[])
{
int a = 0, i;
for(i = 0, System.out.println("a"); i < 10; i++)
{ }
}
}
#18
int i=0;
if(3>2)
i=3,System.out.println(i);
條件判斷后,如果不用{ ... }的話,只能用一個語句,
i=3,System.out.println(i);是兩個語句。
java是不會自動幫你把其中的“,”變成“;”的。
if(3>2)
i=3,System.out.println(i);
條件判斷后,如果不用{ ... }的話,只能用一個語句,
i=3,System.out.println(i);是兩個語句。
java是不會自動幫你把其中的“,”變成“;”的。
#19
不懂为什么可以执行,for循环当中的“,”号和外边的语义不一样
#20
c/c++可以这么写
JAVA我认为是把c/c++容易出错的部分都出错了。
JAVA我认为是把c/c++容易出错的部分都出错了。
#21
牛角尖的问题
还没见过把out语句写在这的
还没见过把out语句写在这的
#22
不要冠以牛角尖掩饰不知道。
只是相信不同意见,在学习中,才是向上的动力。
因为大家都从一无所知,到知的。
只是不知道
for里边的语句规定,
与if为什么不一样。
在C里是肯定一定的,见我的13楼
只是相信不同意见,在学习中,才是向上的动力。
因为大家都从一无所知,到知的。
只是不知道
for里边的语句规定,
与if为什么不一样。
在C里是肯定一定的,见我的13楼
#23
無語...將c和java來比,有何意義?C中有逗號表達式,java中沒有這東西,只是for里可以允許以逗號分隔語句
http://www.java-samples.com/showtutorial.php?tutorialid=276
http://www.java-samples.com/showtutorial.php?tutorialid=276
#24
这语法是正确的,java支持逗号表达式,在java的for循环初始化时逗号表达式必须是同一类型的,显然i = 0与System.out.println("a")都不是声明变量,因此不会有错,而楼主提到的C语法其实和java基本相同的,之所以C语言可以通过是因为在C语言中任何函数都有返回值,void的值就是数字0,而java中的void是特殊的空值,并非数字
#25
一个int类型、以String类型,当然不支持了。
好比声明,int i=5,j="10000000"; 这个当然不支持了。
int i=5,j=10000000; 这个显然对极了。
好比声明,int i=5,j="10000000"; 这个当然不支持了。
int i=5,j=10000000; 这个显然对极了。
#26
一个int类型、一个String类型,当然不支持了。
好比声明,int i=5,j="10000000"; 这个当然不支持了。
int i=5,j=10000000; 这个显然对极了。
好比声明,int i=5,j="10000000"; 这个当然不支持了。
int i=5,j=10000000; 这个显然对极了。
#27
C里有逗号表达式,如a=(2,3,4)这样的。但java里不支持,会报错