用JAVA语言编写一个有两个线程的程序,第一个线程用来计算1~100之间的奇数及个数,第二个线程用来计算1-100之间的偶数及个数,两个线程同时进行。
时间: 2024-03-02 15:54:05 浏览: 72
好的,以下是用JAVA语言编写的一个有两个线程的程序,第一个线程用来计算1~100之间的奇数及个数,第二个线程用来计算1-100之间的偶数及个数,两个线程同时进行。
```java
public class OddEvenThreadDemo {
public static void main(String[] args) {
OddThread oddThread = new OddThread();
EvenThread evenThread = new EvenThread();
oddThread.start();
evenThread.start();
}
}
class OddThread extends Thread {
public void run() {
int count = 0;
for (int i = 1; i <= 100; i += 2) {
count++;
System.out.println("奇数:" + i);
}
System.out.println("奇数个数:" + count);
}
}
class EvenThread extends Thread {
public void run() {
int count = 0;
for (int i = 2; i <= 100; i += 2) {
count++;
System.out.println("偶数:" + i);
}
System.out.println("偶数个数:" + count);
}
}
```
程序中创建了两个线程,OddThread用来计算1~100之间的奇数及个数,EvenThread用来计算1-100之间的偶数及个数。在每个线程的run()方法中,使用for循环计算1~100之间的奇数或偶数,并将其输出到控制台上。在最后,输出计算出的奇数或偶数个数。由于两个线程同时进行,所以输出结果交错,如下:
```
偶数:2
奇数:1
偶数:4
奇数:3
偶数:6
奇数:5
偶数:8
奇数:7
偶数:10
奇数:9
偶数:12
奇数:11
偶数:14
奇数:13
偶数:16
奇数:15
偶数:18
奇数:17
偶数:20
奇数:19
奇数:21
偶数:22
偶数:24
奇数:23
偶数:26
奇数:25
偶数:28
奇数:27
偶数:30
奇数:29
偶数:32
奇数:31
偶数:34
奇数:33
偶数:36
奇数:35
偶数:38
奇数:37
奇数:39
偶数:40
偶数:42
奇数:41
偶数:44
奇数:43
偶数:46
奇数:45
偶数:48
奇数:47
偶数:50
奇数:49
偶数:52
奇数:51
偶数:54
奇数:53
偶数:56
奇数:55
偶数:58
奇数:57
偶数:60
奇数:59
偶数:62
奇数:61
偶数:64
奇数:63
偶数:66
奇数:65
偶数:68
奇数:67
偶数:70
奇数:69
偶数:72
奇数:71
偶数:74
奇数:73
偶数:76
奇数:75
奇数:77
偶数:78
偶数:80
奇数:79
偶数:82
奇数:81
偶数:84
奇数:83
偶数:86
奇数:85
偶数:88
奇数:87
偶数:90
奇数:89
偶数:92
奇数:91
偶数:94
奇数:93
偶数:96
奇数:95
偶数:98
奇数:97
偶数:100
奇数:99
偶数个数:50
奇数个数:50
```
阅读全文