用java语言请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下: 创建自定义线程,实现求第num项斐波那契数列的值num从0开始,并且在main函数中获取子线程最终计算的结果。
时间: 2023-11-20 08:09:10 浏览: 153
以下是实现代码:
```
public class FibonacciThread extends Thread {
private int num;
private int result;
public FibonacciThread(int num) {
this.num = num;
}
@Override
public void run() {
// Begin
int a = 0;
int b = 1;
int c = 0;
if (num == 0) {
result = 0;
} else if (num == 1) {
result = 1;
} else {
for (int i = 2; i <= num; i++) {
c = a + b;
a = b;
b = c;
}
result = c;
}
// End
}
public int getResult() {
return result;
}
public static void main(String[] args) throws InterruptedException {
int num = 10;
FibonacciThread thread = new FibonacciThread(num);
thread.start();
thread.join();
int result = thread.getResult();
System.out.println("第" + num + "项斐波那契数列的值为:" + result);
}
}
```
在 `run` 方法中,我们需要根据题目要求,计算第 `num` 项斐波那契数列的值,并将结果保存在 `result` 中。
在 `main` 方法中,我们创建了一个自定义线程 `FibonacciThread`,并将要求的斐波那契数列的项数 `num` 传入。接着启动线程并等待其执行完毕,最后获取线程计算的结果并输出。
阅读全文