java使用匿名内部类以及Runnable接口实现统计某个num的阶加的结果【Scanner输入n】
时间: 2024-02-28 11:53:37 浏览: 89
Java多线程-创建多线程的基本方式二:实现Runnable接口
好的,我可以帮你解决这个问题。以下是示例代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
// 创建一个匿名内部类,并实现Runnable接口
Runnable r = new Runnable() {
@Override
public void run() {
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += factorial(i);
}
System.out.println("阶加的结果为:" + sum);
}
// 计算阶乘
private int factorial(int num) {
if (num == 1) {
return 1;
}
return num * factorial(num - 1);
}
};
// 创建一个线程并启动
Thread thread = new Thread(r);
thread.start();
}
}
```
输入一个数n后,程序会创建一个匿名内部类并实现Runnable接口,这个类的run方法中会计算1到n的阶乘和,并输出结果。然后程序会创建一个线程并启动这个线程,从而实现异步计算。
阅读全文