在Java和Eiffel等语言中,函数(返回值)和方法,变换语句组之间存在分歧。所以一种方法是这样的: public main blah NAMEOFMETHOD(x){ 声明/ COMMAND 声明/ COMMAND 声明/ COMMAND }
R具有语言的基本功能,但没有明显的方法来制作方法(我认为)。我只是将一组命令放在一个类中吗? (我几年前用Eiffel和Java编程,但现在使用R进行统计,并且正在使用一些编程来扩展我的工作 - 或者编码你现在称它为什么?!)
老家伙重新学习。请温柔。
答案 0 :(得分:1)
R是一种函数式编程语言。重要的是要理解技术上没有真正的功能(可能产生情节的副作用)和方法之间的区别。
唯一的区别是没有“返回值”。
带签名的Java方法
void doSomething()
(错过了return
)可以在R中实现
doSomething <- function(){
# Do something here
return(invisible(NULL))
}
其中NULL
是返回值(“无”),invisible
指示R不自动将此结果打印到控制台。
return(invisible(NULL))
等同于较短的语句return(invisible())
,如果它是函数中的最后一行代码,则应该等同于invisible()
,因为R自动返回函数体中最后一次计算的结果。