Java中从一个方法到另一个方法的调用字符串
对不起,如果这是一个简单的问题,但我已经尝试了很长一段时间,现在是否可以调用字符串从一个方法到另一个 下面,我想从方法Java中从一个方法到另一个方法的调用字符串,java,string,methods,call,Java,String,Methods,Call,对不起,如果这是一个简单的问题,但我已经尝试了很长一段时间,现在是否可以调用字符串从一个方法到另一个 下面,我想从方法fileName调用字符串fileName到fileOutputToFile。我知道我可以传递它,但我想从fileOutputToFile调用它 public class outputToFile { public void fileName(){ String fileName = "Test"; } public void f
fileName
调用字符串fileName
到fileOutputToFile
。我知道我可以传递它,但我想从fileOutputToFile
调用它
public class outputToFile {
public void fileName(){
String fileName = "Test";
}
public void fileOutputToFile(String hex) throws Exception{
String fileInfo = hex;
try {
PrintWriter out = new PrintWriter(new BufferedWriter(
new FileWriter("myfile.txt", true)));
out.print(fileInfo);
out.print("\n");
out.close();
}catch (IOException e){
}
}
}
调用另一个方法中的局部变量是不可能的——这是一个范围问题 因此,无法从
fileOutputToFile
方法的fileName()
方法中检索fileName
变量
调用fileName
方法时,“检索”文件名的一种方法是返回文件名:
public String getFileName(){
String fileName = "Test";
return fileName;
}
(注意:我冒昧地将该方法重命名为更接近Java中命名标识符的约定的名称。)
然后,在fileOutputToFile
方法中,可以调用getFileName
方法来检索fileName
的值
应该注意的是,在这种情况下,实际上最好只使用字段(实例或类变量),而不是调用单独的方法来检索文件名。考虑到该方法只是返回一个常量字符串
,字段可以保存该值:
public class OutputToFile {
// Here, we use a class variable.
private static final String FILE_NAME = "Test";
public void fileOutputToFile(String hex) {
// use FILE_NAME field here.
}
}
所有变量的作用域通常限于它们所在的{}封闭空间。因此,如果在一个方法中创建变量,除非传入变量,否则在另一个方法中无法访问该变量
好消息是您可以创建一个类中所有方法共享的类级变量
public class OutputToFile {
private String fileName = "Test";
public void fileName() {
System.out.println(fileName);
fileName = "Something Different"
}
public void fileOutputToFile(String hex) {
System.out.println(fileName);
// Do other things with it
}
}
如果我理解正确,您希望从fileName()返回一个字符串
目前,fileName()的实现没有任何作用。必须添加return语句才能返回值:“return“Test”请澄清,您再次尝试执行的是什么操作?