需要有关Java签名的帮助

时间:2016-06-13 05:54:12

标签: java

我最近开始学习java编程语言,我需要一些关于这个问题的帮助。给定一个类文件,将以下字段声明为arrayList,私有private ArrayList<String> files;为列出该集合的所有成员的方法写一个标题(签名)。调用方法listAllFiles。我目前的尝试是这样的。

private listAllFiles(ArrayList<String>); 

3 个答案:

答案 0 :(得分:3)

您正在从方法中省略返回类型。所有Java方法都必须返回一个类型或void

如果您的方法只是将所有文件列为String Object,那么它可以返回一个字符串:

public String listAllFiles()

如果它将所有文件列出到System.out,它可以返回void

public void listAllFiles()

或者它可以返回private ArrayList<String>的副本(从而使私有变量不可变为客户端):

public List<String> listAllFiles()

请注意,您的方法可能应该是public以允许客户端使用它...这很大程度上取决于需求,并且方法可能适合private Class

注意,正如@Thilo在评论中指出的那样,如果你要返回一个List你应该“编程到界面”,返回一个List而不是一个特定类型的List,从而允许你改变如果/当需求发生变化时,实际的List实施。

答案 1 :(得分:2)

如果方法只是打印出来的东西,那么返回类型将为public void listAllFiles(){ // no need to pass in the string list, because we can do for (String l: this.files){ // .. } } (无):

android:scaleType

答案 2 :(得分:1)

您的方法必须首先具有访问级别(例如privateprotectedpublic默认级别的任何内容),之后它具有定义它返回的内容,所以我假设从描述中没有任何内容(void),如果你在这个类中有字段,你就不需要任何参数:

private void listAllFiles();