nfc*_*-uk 1 java recursion multithreading
我想在线程runnable run()方法中放置一个递归函数 - 这是一个示例片段..
Run Code Online (Sandbox Code Playgroud)yt[c] = new Thread ( new Runnable() { public void run() { /* recursive function here */ } } );
他们是否可以在run()方法中实现这一点?有效地在方法中嵌入方法(我假设递归函数必须作为方法实现)?
作为一个简单的例子说我将如何实现n!在run()方法中(递归不迭代)?我很困惑.
非常感谢.
有效地在方法中嵌入方法
好吧,你不会将方法嵌入run方法本身.而只是添加另外一个方法run并调用它: -
new Thread (
new Runnable() {
public void run() {
/* recursive function here */
fact(10);
}
private void fact(int n) {
// logic
}
}
);
Run Code Online (Sandbox Code Playgroud)
因为new Runnable() { },你只是创建一个实现Runnable接口的匿名类,所以,没有人阻止你添加自己的额外方法.也许你也可以制作它private,因为你不会从外面使用它.