问题在于所谓的循环四次是什么循环四次?是每个线程操作四次?如果是这样的话,方案如下:
使用三个线程类,一个主类MainClass,包含static整型属性value,并在其main()方法中启动其它四个线程。
一个用于加的线程类,run()方法体如下:
public void run(){
  for(int i=0;i<4;i++){
    synchronized(MainClass.value){
      MainClass.value++;
    }
  }
}
一个用于减的线程类,run()方法体如下:
public void run(){
  for(int i=0;i<4;i++){
    synchronized(MainClass.value){
      MainClass.value--;
    }
  }
}