コード:整数の引数は、Javaで文字列の引数として解釈されて
class Foo
{
public static void main(String[] args)
{
int x[] = new int[5];
for(int i=0;i<5;i++)
x[i]=i*i;
for(int i=0;i<5;i++)
{
System.out.println("Value #" + i+1 + " = " + x[i]);
}
}
}
出力:
[email protected]:~$ java Foo
Value #01 = 0
Value #11 = 1
Value #21 = 4
Value #31 = 9
Value #41 = 16
だから、何がここで起こっているの?私はどこで私のJavaコードを台無しにしていますか?私はなぜそれがJavaで、i+1
は文字通りi
concat 1
を意味するのですか?
連結は左から右に行われます。だから、最初にValue# "+ i"が実行され、Sting + Integerは文字列の連結として解釈されます。連結の前にi + 1を実行することを示すには、かっこを使用します。 –
あなたは2つの異なることをしています。 Javaでは連結文字列を出力し、C++では別々の "items"を出力します。 –
これを修正するには 'System.out.println(" Value# "+(i + 1)+" = "+ x [i]);' – Jesper