62,621
社区成员
发帖
与我相关
我的任务
分享import java.util.*;
public class Alighment {
public static void main(String args[]) {
int[] Alig = new int[10];
Ad a = new Ad(Alig);
De b = new De(Alig);
new Thread(a).start();
new Thread(b).start();
}
}
class Alig{
int a[]=new int[10];
Alig(int a[]){
this.a = a;
}
public synchronized void ad(){
while(a[0]==0){
try{
Thread.sleep(1000);
}catch(Exception e){
//异常处理
}
for(int i=0;i<9;i++){
a[i]=a[i+1];
}
a[9]=(int)(Math.random()*100)+1;
System.out.println("添加了一个数:"+a[9]);
for(int i=0;i<10;i++)
System.out.println("输出:"+a[i]);
}
}
public synchronized void de(){
while(true){
try{
Thread.sleep(1000);
}catch(Exception e){
//异常处理
}
for(int i=0;i<10;i--){
System.out.println("删除了一个数:"+a[i]);
a[i]=0;
}
}
}
}
class Ad implements Runnable{
int a[];
Ad(int a[]){
this.a=a;
}
public void run(){
new Alig(a).ad();
}
}
class De implements Runnable{
int a[];
De(int a[]){
this.a=a;
}
public void run(){
new Alig(a).de();
}
}import java.util.*;
public class Thead_test {
public static void main(String args[]) {
int[] Alig = new int[10];
Alig xx=new Alig(Alig);
Ad a = new Ad(Alig,xx);
De b = new De(Alig,xx);
new Thread(a).start();
new Thread(b).start();
}
}
class Alig{
int a[]=new int[10];
Object lock=new Object();
Alig(int a[]){
this.a = a;
}
public void ad(){
while(a[0]==0){
synchronized (lock) {
lock.notify();
for(int i=0;i<9;i++){
a[i]=a[i+1];
}
a[9]=(int)(Math.random()*100)+1;
a[8]=(int)(Math.random()*100)+1;
for(int i=0;i<10;i++)
System.out.println("输出:"+a[i]);
try{
lock.wait();
}catch (Exception e) {
e.printStackTrace();
}
}
}
}
public void de(){
System.out.println(a[9]);
while(true){
synchronized (lock) {
lock.notify();
for(int i=9;i>=0;i--){
if(a[i]!=0){
System.out.println("删除了一个数:"+a[i]);
a[i]=0;
}
}
try{
lock.wait();
}catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
class Ad implements Runnable{
int a[];
Alig xx;
Ad(int a[],Alig xx){
this.a=a;
this.xx=xx;
}
public void run(){
xx.ad();
}
}
class De implements Runnable{
int a[];
Alig xx;
De(int a[],Alig xx){
this.a=a;
this.xx=xx;
}
public void run(){
xx.de();
}
}
import java.util.*;
public class Thead_test {
public static void main(String args[]) {
int[] Alig = new int[10];
Ad a = new Ad(Alig);
De b = new De(Alig);
new Thread(a).start();
new Thread(b).start();
}
}
class Alig{
int a[]=new int[10];
Alig(int a[]){
this.a = a;
}
public synchronized void ad(){
while(a[0]==0){
notify();
for(int i=0;i<9;i++){
a[i]=a[i+1];
}
a[9]=(int)(Math.random()*100)+1;
System.out.println("添加了一个数:"+a[9]);
for(int i=0;i<10;i++)
System.out.println("输出:"+a[i]);
try{
wait();
}catch (Exception e) {
e.printStackTrace();
}
}
}
public synchronized void de(){
while(true){
notify();
for(int i=9;i>=0;i--){
System.out.println("删除了一个数:"+a[i]);
a[i]=0;
}
try{
wait();
}catch (Exception e) {
e.printStackTrace();
}
}
}
}
class Ad implements Runnable{
int a[];
Ad(int a[]){
this.a=a;
}
public void run(){
new Alig(a).ad();
}
}
class De implements Runnable{
int a[];
De(int a[]){
this.a=a;
}
public void run(){
new Alig(a).de();
}
}