我以与输入相反的顺序显示java数组的内容,但只显示了一半的数组

stu*_*213 1 java arrays reverse

我正在做一个关于Java的基础课程,任务是创建一个程序,用户将10个字符串输入到一个数组中,让程序按照它们输入的相反顺序将它们显示给用户.

这是迄今为止的相关代码

String []stringarray = new String[10];

public void add()
{
    System.out.println ("Enter 10 Strings :");
    for ( int i=0; i<10  ; i++ )
        stringarray[i] = Genio.getString(); 
}

public void display()
{
    for (int i=0; i<10/2; i++)
    {
        String tmp = stringarray[i];
        stringarray[i] = stringarray[10 - i - 1];
        stringarray[10 - i - 1] = tmp;
        System.out.println (stringarray[i]);
    }
}
Run Code Online (Sandbox Code Playgroud)

所以当我输入1 2 3 4 5 6 7 8 9 0时,我应该收到0 9 8 7 6 5 4 3 2 1.

但是我只收到0 9 8 7 6.我认为这可能与"i <10/2;"有关 在for line中,但我不确定.

Mur*_*nik 6

如果你只需要向后显示数组,就不需要交换元素 - 只需从9(10-1)循环到0并打印元素:

public void display()
{
    for (int i = stringarray.length - 1; i >= 0; i--)
    {
        System.out.println (stringarray[i]);
    }
}
Run Code Online (Sandbox Code Playgroud)