当前位置: 代码迷 >> java >> Java函数问题
  详细解决方案

Java函数问题

热度:44   发布时间:2023-07-31 11:16:03.0

好吧,我是Java的新手,正在尝试开发一个应用程序来教自己如何使用该语言。

我一直在复制和粘贴相同的几行代码,而且我知道有一种方法可以将其合并为一个函数,但不能完全弄清楚。

 FileOutputStream fout4 = openFileOutput("building1hourly.txt", MODE_WORLD_READABLE);
 OutputStreamWriter osw4 = new OutputStreamWriter(fout4);
 osw4.write("" +iHourlyAfter);
 osw4.flush();
 osw4.close();

现在没有某种方式可以做这样的事情

public void writerFunction("What to write to file", "name stream", "name writer", "MODE"){insert above code here}

是的,一点没错:

public void writeToFile(String fileName, String contents, int mode) throws IOException {
    FileOutputStream fout = openFileOutput(fileName, mode);
    OutputStreamWriter osw = new OutputStreamWriter(fout);
    osw.write(contents);
    osw.flush();
    osw.close();
}

首先,到目前为止,做得很好。 学习编程就像学习数学一样(除了更有趣),您可以在一本书中阅读所有想要的内容,但是直到您真正理解概念后,您才真正理解它们。 您正在按照正确的方式进行操作。

现在,回答您的问题:是的,您可以将写入文件的过程封装在一个函数中。 我们称它为writeToFile 您想通过发送参数来“调用”此函数。 参数是函数完成其工作所需的信息。

函数有两个方面: 声明调用 就像在数学中一样,您可以定义一个函数f(x) ,其中f做一些事情。 例如:说我有函数f(x) = 2x - 4 该方程式就是我们所谓的函数声明,因为我们定义了f所做的事情,而您正在定义f接受的参数 ,即单个值x 然后,您想将该函数应用于某个值x ,因此您可以执行以下操作: f(4) 这是函数调用 您正在调用或调用该函数,并发送4作为参数 调用函数的代码称为调用方

让我们从要构建的函数的声明开始:

public void writeToFile (String data, String fileName)

该函数在其签名中定义了两个参数。 它需要一个String其中包含您将写入文件的data ,以及我们将data写入其中的fileName void表示此函数不会将任何数据返回给调用方。

完整功能,您在帖子中提供的主体:

public void writeToFile (String data, String fileName){
    FileOutputStream fout4 = openFileOutput(fileName, MODE_WORLD_READABLE);
    OutputStreamWriter osw4 = new OutputStreamWriter(fout4);
    osw4.write("" +iHourlyAfter);
    osw4.flush();
    osw4.close();
}

现在,您将要在代码中的其他地方调用或调用此函数。 您可以这样做:

writeToFile("stuff I want to write to a file", "myFile.txt");
  相关解决方案