I have made a programe which print 5 number using 2 threads.
public class Class1 {
static int value = 6;
public void show() {
for (int i = 0; i < value; value--) {
System.out.println(Thread.currentThread().getName() + " - Number: " + value);
}
}
public static void main(String[] args) {
final Class1 main = new Class1();
Runnable runner = new Runnable() {
@Override
public void run() {
main.show();
}
};
new Thread(runner, "Thread 1").start();
new Thread(runner, "Thread 2").start();
} }
It gave me output like this:
Thread 1 - Number: 6
Thread 2 - Number: 6
Thread 1 - Number: 5
Thread 2 - Number: 4
Thread 1 - Number: 3
Thread 1 - Number: 1
Thread 2 - Number: 2
But i want that it gave me output like this
Thread 1 - Number: 6
Thread 1 - Number: 5
Thread 1 - Number: 4
Thread 2 - Number: 3
Thread 2 - Number: 2
Thread 2 - Number: 1
I know it is easy we can simply use if else condition in the show() Method but i don't want to use if else in the show() method, i want to change some thing in the main() method which do the work done.