我正在学习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]);
    }
}


因此,当我输入1 2 3 4 5 6 7 8 9 0时,我应该收到0 9 8 7 6 5 4 3 2 1返回。

但是我只收到0 9 8 76。我认为可能与“ i

最佳答案

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

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

10-08 11:13