ArrayList方法在调用时创建错误

时间:2014-03-14 05:01:08

标签: arraylist

大家好我想创建一个接收字符串值列表并反向返回列表的方法。 for循环应该以相反的顺序遍历值,从最后一个元素开始。当我尝试在main方法中调用方法时,我收到错误消息,我不知道要传递什么参数。这是我的代码。

enter code here :import java.util.*;
               public class ThisList 
             {
        public static void main (String[] args)
        {   
    list(ArrayList<String> words);
        }
          public static ArrayList<String> list(ArrayList<String> words)
        {   
    ArrayList<String> phrase =new ArrayList<String>();
    words.add("before");
    words.add("gone");
    words.add("has");
    words.add("man");
    words.add("no");
    words.add("where");
    words.add("go");
    words.add("bodly");
    words.add("To");
    for(int i= words.size()-1; i>= 0; i--)
    {
        phrase.add(words.get(i));
    }
    return phrase;
         }


                }

1 个答案:

答案 0 :(得分:0)

你的问题在于如何在main中调用list()函数,特别是你如何不正确地发送你的参数。您不应该在调用函数时声明/初始化对象。它在语法上是不正确的,以及之后你将如何访问它?即使可以在调用函数时声明一个对象,当您尝试使用它时,单词数组也是未初始化的。此外,您的函数list()返回一个ArrayList。您没有在main()函数中将ArrayList设置为从list()返回的ArrayList(短语)。

我建议您查看面向对象的编程基础知识和一些初学者Java教程,这样您就可以更好地理解能够自己解决这类问题。

http://docs.oracle.com/javase/tutorial/java/concepts/

以下是您发布的代码,以及正确的方式来调用您的函数。如果这是你需要的,不要忘记upvote并选择这个答案作为正确答案! (按下帖子旁边的向上箭头,然后点击帖子旁边的复选标记接受答案,使其变为绿色)。

import java.util.*;

public class ThisList 

{


public static void main (String[] args)

{   
    ArrayList<String> words = new ArrayList<String>();
    ArrayList<String> phrase_returned = list(words); 
}

public static ArrayList<String> list(ArrayList<String> words)
{   
    ArrayList<String> phrase =new ArrayList<String>();
    words.add("before");
    words.add("gone");
    words.add("has");
    words.add("man");
    words.add("no");
    words.add("where");
    words.add("go");
    words.add("bodly");
    words.add("To");
    for(int i= words.size()-1; i>= 0; i--)
    {
        phrase.add(words.get(i));
    }
    return phrase;
 }

}