Wednesday, 18 February 2015

Programs On Threads and Collections

// Thread demo

public class Multi extends Thread
{
       public void run()
      
       {
              for (int i = 0; i < 10; i++) {
                     System.out.println( i);
                    
              }
       }
       public static void main(String[] args) {

              Multi m= new Multi();
              m.start();
             
       }

}



Thread Demos :--

public class Multi  implements Runnable
{
       public void run()
      
       {
              for (int i = 0; i < 10; i++) {
                     System.out.println( i);
                    
              }
       }
       public static void main(String[] args) {

              Multi m= new Multi();
              Thread t=new Thread(m);
              t.start();
             
       }

}


//  Sleep Method
public class Multi  implements Runnable
{
       public void run()
      
       {
              for (int i = 0; i < 10; i++) {
                     try {
                           Thread.sleep(12000);
                     } catch (InterruptedException e) {
                           // TODO Auto-generated catch block
                           e.printStackTrace();
                     }
                     System.out.println(i);
                    
              }
       }
       public static void main(String[] args) {

              Multi m= new Multi();
              Thread t=new Thread(m);
              t.start();
             
       }

}


 //  if you start a thread twice

public class Multi  implements Runnable
{
       public void run()
      
       {
              for (int i = 0; i < 10; i++) {
                     try {
                           Thread.sleep(12000);
                     } catch (InterruptedException e) {
                           // TODO Auto-generated catch block
                           e.printStackTrace();
                     }
                     System.out.println(i);
                    
              }
       }
       public static void main(String[] args) {

              Multi m= new Multi();
              Thread t=new Thread(m);
              t.start();
              t.start();
             
       }

}



public class Multi  implements Runnable
{
       public void run()
      
       {
              for (int i = 0; i < 10; i++) {
                     try {
                           Thread.sleep(12000);
                     } catch (InterruptedException e) {
                           // TODO Auto-generated catch block
                           e.printStackTrace();
                     }
                     System.out.println(i);
                    
              }
       }
       public static void main(String[] args) {

              Multi m= new Multi();
              Thread t=new Thread(m);

    t.run();
   
       }

}

public class Multi  implements Runnable
{
       public void run()
      
       {
              for (int i = 0; i < 10; i++) {
                     try {
                           Thread.sleep(12000);
                     } catch (InterruptedException e) {
                           // TODO Auto-generated catch block
                           e.printStackTrace();
                     }
                     System.out.println(i);
                    
              }
       }
       public static void main(String[] args) {

              Multi m= new Multi();
              Thread t=new Thread(m);

       t.run();
   
       }

}



public class Multi  implements Runnable
{
       public void run()
      
       {
              for (int i = 1; i < 10; i++) {
                     try {
                           Thread.sleep(12000);
                     } catch (InterruptedException e) {
                           // TODO Auto-generated catch block
                           e.printStackTrace();
                     }
                     System.out.println(i);
                    
              }
       }
       public static void main(String[] args)  {

              Multi m= new Multi();
              Thread t1=new Thread(m);
              Thread t2=new Thread(m);
              Thread t3=new Thread(m);
              Thread t4=new Thread(m);

    t1.start();
    try {
              t1.join(1200);
       } catch (InterruptedException e) {
              e.printStackTrace();
       }
    t2.start();
    t3.start();
    t4.start();
   
   
       }

}




Dead Lock :-

public class TestDeadlockExample1 {  
  public static void main(String[] args) {  
    final String resource1 = "ratan jaiswal";  
    final String resource2 = "vimal jaiswal";  
    // t1 tries to lock resource1 then resource2  
    Thread t1 = new Thread() {  


      public void run() {  
          synchronized (resource1) {  
           System.out.println("Thread 1: locked resource 1");  
  
           try { Thread.sleep(100);} catch (Exception e) {}    
           synchronized (resource2) {  
            System.out.println("Thread 1: locked resource 2");  
           }  
         } 
      } 
 };  
  
    // t2 tries to lock resource2 then resource1  
    Thread t2 = new Thread() {  
      public void run() {  
        synchronized (resource2) {  
          System.out.println("Thread 2: locked resource 2");    
          try { Thread.sleep(100);} catch (Exception e) {}  
  
         synchronized (resource1) {  
            System.out.println("Thread 2: locked resource 1");            }  
        }  
      }  
    };  
  
      
    t1.start();  
    t2.start();  
 }  }  





// Thread creation using extends Thread Class


//  Threads Demos


public class Multi1  extends Thread{
       public void run()
       {
              for (int i=1; i<10;i++)
              {
                     System.out.println(i);
              }
       }
       public static void main(String[] args) {
              Multi1 m=new Multi1();
              m.start();
              for(int i=11;i<=102;i++)
              {
                     System.out.println("main " + i);
              }
             
       }

}



// thread creation implementing Runnable Interface

public class Multi2  implements Runnable{

       @Override
       public void run() {

for (int i=1;i<12;i++)
{
       System.out.println(i);
}
             
       }
      
       public static void main(String[] args) {
              Multi2 m=new Multi2();
               Thread t=new Thread(m);
               t.start();
               
       }
      

}




// Sleep Method
public class Multi2  implements Runnable{

       @Override
       public void run() {

for (int i=1;i<12;i++)
{
       try {
              Thread.sleep(1200);
       } catch (InterruptedException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
       }
       System.out.println(i);
}
             
       }
      
       public static void main(String[] args) {
              Multi2 m=new Multi2();
               Thread t=new Thread(m);
               t.start();
               
       }
      

}




// start a thread Twice
public class Multi2  implements Runnable{

       @Override
       public void run() {

for (int i=1;i<12;i++)
{
       try {
              Thread.sleep(1200);
       } catch (InterruptedException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
       }
       System.out.println(i);
}
             
       }
      
       public static void main(String[] args) {
              Multi2 m=new Multi2();
               Thread t=new Thread(m);
               t.start();
               t.start();
       }
      

}




public class Multi2  implements Runnable{

       @Override
       public void run() {

for (int i=1;i<12;i++)
{
       try {
              Thread.sleep(1200);
       } catch (InterruptedException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
       }
       System.out.println(i);
}
             
       }
      
       public static void main(String[] args) {
              Multi2 m=new Multi2();
               Thread t=new Thread(m);
               try{
               t.start();
               t.start();
               }
               catch (Exception e)
               {
                      System.out.println("not a problem ");
               }
       }
      

}




// Call a run method Directly




public class Multi1  extends Thread {
       public void run()
       {
              for (int i=1; i<10;i++)
              {
                     System.out.println(i);
              }
       }
       public static void main(String[] args) {
              Multi1 m=new Multi1();
              m.run();
              for(int i=11;i<=102;i++)
              {
                     System.out.println("main " + i);
              }
             
       }

}


// Join  Method


public class Multi  implements Runnable
{
       public void run()
      
       {
              for (int i = 1; i < 10; i++) {
                     try {
                           Thread.sleep(12000);
                     } catch (InterruptedException e) {
                           // TODO Auto-generated catch block
                           e.printStackTrace();
                     }
                     System.out.println(i);
                    
              }
       }
       public static void main(String[] args)  {

              Multi m= new Multi();
              Thread t1=new Thread(m);
              Thread t2=new Thread(m);
              Thread t3=new Thread(m);
              Thread t4=new Thread(m);

    t1.start();
    try {
              t1.join(1200);
       } catch (InterruptedException e) {
              e.printStackTrace();
       }
    t2.start();
    t3.start();
    t4.start();
   
   
       }

}


// Naming  a Thread

public class Multi1  extends Thread {
       public void run()
       {
              for (int i=1; i<10;i++)
              {
                     System.out.println(Thread.currentThread().getName());
                     System.out.println(i);
              }
       }
       public static void main(String[] args) {
              Multi1 m=new Multi1();
              Multi1 m1=new Multi1();
              m.setName("sravan");
              m1.setName("sravani");
              m.start();
              m1.start();


       }

}




// Priorioty of threads

public class Multi1  extends Thread {
       public void run()
       {
              for (int i=1; i<10;i++)
              {
                     System.out.println(Thread.currentThread().getName());
                     System.out.println(Thread.currentThread().getPriority());
                     System.out.println(i);
              }
       }
       public static void main(String[] args) {
              Multi1 m=new Multi1();
              Multi1 m1=new Multi1();
              m.setName("sravan");
              m1.setName("sravani");
              m1.setPriority(MAX_PRIORITY);
              m.setPriority(MIN_PRIORITY);
              m.start();
              m1.start();


       }

}




// Deamon  Thread



public class Multi  implements Runnable
{
       public void run()
      
       {
              if(Thread.currentThread().isDaemon())
                    
              {
                     System.out.println("Deamon thred will works ");
              }
              else
              {
                     System.out.println("Not a deamon thread will not works user thraed will works");
              }
             
             
             
       }
       public static void main(String[] args)  {

              Multi m= new Multi();
              Thread t1=new Thread(m);
              Thread t2=new Thread(m);
              Thread t3=new Thread(m);
              Thread t4=new Thread(m);
             
              t1.setDaemon(true);

    t1.start();
    try {
              t1.join(1200);
       } catch (InterruptedException e) {
              e.printStackTrace();
       }
    t2.start();
    t3.start();
    t4.start();
   
   
       }

}


// Setting Deamon after Thread Starts

public class Multi  implements Runnable
{
       public void run()
      
       {
              if(Thread.currentThread().isDaemon())
                    
              {
                     System.out.println("Deamon thred will works ");
              }
              else
              {
                     System.out.println("Not a deamon thread will not works user thraed will works");
              }
             
             
             
       }
       public static void main(String[] args)  {

              Multi m= new Multi();
              Thread t1=new Thread(m);
              Thread t2=new Thread(m);
              Thread t3=new Thread(m);
              Thread t4=new Thread(m);
             
              t1.setDaemon(true);

    t1.start();
    try {
              t1.join(1200);
       } catch (InterruptedException e) {
              e.printStackTrace();
       }
    t2.start();
    t2.setDaemon(true);
    t3.start();
    t4.start();
   
   
       }

}




// Multiple Tasks By Multiple Threads

public class Simple12  extends Thread {
       public void run()
       {
              System.out.println("hi");
       }
      
      
      

}

class Simple121  extends Thread {
       public void run()
       {
              System.out.println("hru");
       }
}
class Test1
{
       public static void main(String[] args) {
              Simple12 s=new Simple12();
              Simple121 s1=new Simple121();
              s.start();
              s1.start();
             
       }
}




public class Simple12  {


      
      

}

class Simple121  extends Thread {
       public void run()
       {
              System.out.println("hru");
       }
}
class Test1
{
       public static void main(String[] args) {
              //Simple12 s=new Simple12();
       Thread t=new Thread()
                 {
                        
                        public void run()
                        {
                              for (int i=1;i<10;i++)
                              {
                                     System.out.println(i);
                              }
                        }
                 };
                 
                 t.start();
                           //Simple12 s=new Simple12(t);  
                          
                    

             
      
             
             
                 }
}


// Add All demo in Collections

import java.util.ArrayList;


public class Cdemo1 {
       public static void main(String[] args) {
              ArrayList<String> al=new ArrayList<String>();//creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Ravi"); 
                al.add("Ajay"); 
                ArrayList<String> al2=new ArrayList<String>();//creating arraylist 
                al2.add("suresh");//adding object in arraylist 
                al2.add("Vijintha"); 
                al2.add("Ravi"); 
                al2.add("Ajay"); 
                al.addAll(al);
                for(String s: al)
                {
                       System.out.println(s);
                }
               
       }

}



// Iterator


import java.util.ArrayList;
import java.util.Iterator;


public class Cdemo1 {
       public static void main(String[] args) {
              ArrayList<String> al=new ArrayList<String>();//creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Ravi"); 
                al.add("Ajay"); 
                ArrayList<String> al2=new ArrayList<String>();//creating arraylist 
                al2.add("suresh");//adding object in arraylist 
                al2.add("Vijintha"); 
                al2.add("Ravi"); 
                al2.add("Ajay"); 
                al.addAll(al);

          Iterator< String >  itr =al.iterator();
          while(itr.hasNext())
          {
                System.out.println(itr.next());
          }
               
       }

}



// Adding user Defined objects in array




public class Student1 {
       int sid;
       String name;
       int age;
       public Student1(int sid, String name, int age) {

              this.sid = sid;
              this.name = name;
              this.age = age;
       }
      

}


import java.util.ArrayList;


public class Cdemos {
       public static void main(String[] args) {
              Student1 s=new Student1(101, "sravan", 12);
              Student1 s1=new Student1(107, "sravani", 120);
              ArrayList<Student1> al=new ArrayList<Student1>();
              al.add(s);
              al.add(s1);
              for (Student1 s3: al)
              {
                     System.out.println(s3.sid);
                     System.out.println(s3.name);
                     System.out.println(s3.age);
              }
       }
      

}

// Remove All Method




import java.util.ArrayList;
import java.util.Iterator;


public class Cdemo1 {
       public static void main(String[] args) {
              ArrayList<String> al=new ArrayList<String>();//creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Sharma"); 
                al.add(" Jyothi"); 
                ArrayList<String> al2=new ArrayList<String>();//creating arraylist 
                al2.add("suresh");//adding object in arraylist 
                al2.add("Vijintha"); 
                al2.add("Ravi"); 
                al2.add("Ajay"); 
                al.removeAll(al2);

          Iterator< String >  itr =al.iterator();
          while(itr.hasNext())
          {
                System.out.println(itr.next());
          }
               
       }

}


// Retain All Method

import java.util.ArrayList;
import java.util.Iterator;


public class Cdemo1 {
       public static void main(String[] args) {
              ArrayList<String> al=new ArrayList<String>();//creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Sharma"); 
                al.add(" Jyothi"); 
                ArrayList<String> al2=new ArrayList<String>();//creating arraylist 
                al2.add("suresh");//adding object in arraylist 
                al2.add("Vijintha"); 
                al2.add("Ravi"); 
                al2.add("Ajay"); 
                al.retainAll(al2);

          Iterator< String >  itr =al.iterator();
          while(itr.hasNext())
          {
                System.out.println(itr.next());
          }
               
       }

}


// Linked List Demo



import java.util.Iterator;
import java.util.LinkedList;


public class Cdemo1 {
       public static void main(String[] args) {
              LinkedList <String> al=new LinkedList<String>();//creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Sharma"); 
                al.add(" Jyothi"); 



          Iterator< String >  itr =al.iterator();
          while(itr.hasNext())
          {
                System.out.println(itr.next());
          }
               
       }

}

import java.util.Iterator;
import java.util.LinkedList;


public class Cdemo1 {
       public static void main(String[] args) {
              LinkedList <String> al=new LinkedList<String>();//creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Sharma"); 
                al.add(" Jyothi"); 



          Iterator< String >  itr =al.iterator();
          while(itr.hasNext())
          {
                System.out.println(itr.next());
          }
               
       }

}


// List Iterator Demo
import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;


public class Cdemo1 {
       public static void main(String[] args) {
              ArrayList<String> al=new ArrayList<String>();//creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Sharma"); 
                al.add(" Jyothi"); 
                ArrayList<String> al2=new ArrayList<String>();//creating arraylist 
                al2.add("suresh");//adding object in arraylist 
                al2.add("Vijintha"); 
                al2.add("Ravi"); 
                al2.add("Ajay"); 
                al.retainAll(al2);

          ListIterator < String >  itr =al.listIterator();
          while(itr.hasNext())
          {
                System.out.println(itr.next());
          }
               
       }

}


// Hash Set Demo


import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.ListIterator;


public class Cdemo1 {
       public static void main(String[] args) {
               HashSet<String> al=new HashSet<String>();  //creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Sharma"); 
                al.add(" Jyothi"); 
                ArrayList<String> al2=new ArrayList<String>();//creating arraylist 
                al2.add("suresh");//adding object in arraylist 
                al2.add("Vijintha"); 
                al2.add("Ravi"); 
                al2.add("Ajay"); 
               // al.retainAll(al2);

          Iterator < String >  itr =al.iterator();
          while(itr.hasNext())
          {
                System.out.println(itr.next());
          }
               
       }

}
// Linked Hash Set


import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.ListIterator;


public class Cdemo1 {
       public static void main(String[] args) {
              LinkedHashSet<String> al=new LinkedHashSet<String>();    //creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Sharma"); 
                al.add(" Jyothi"); 
                ArrayList<String> al2=new ArrayList<String>();//creating arraylist 
                al2.add("suresh");//adding object in arraylist 
                al2.add("Vijintha"); 
                al2.add("Ravi"); 
                al2.add("Ajay"); 
               // al.retainAll(al2);

          Iterator < String >  itr =al.iterator();
          while(itr.hasNext())
          {
                System.out.println(itr.next());
          }
               
       }

}

// Tree Set Demo


import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.ListIterator;
import java.util.TreeSet;


public class Cdemo1 {
       public static void main(String[] args) {
               TreeSet<String> al=new TreeSet<String>();    //creating arraylist 
                al.add("Ravi");//adding object in arraylist 
                al.add("Vijay"); 
                al.add("Sharma"); 
                al.add(" Jyothi"); 
                ArrayList<String> al2=new ArrayList<String>();//creating arraylist 
                al2.add("suresh");//adding object in arraylist 
                al2.add("Vijintha"); 
                al2.add("Ravi"); 
                al2.add("Ajay"); 
               // al.retainAll(al2);

          Iterator < String >  itr =al.iterator();
          while(itr.hasNext())
          {
                System.out.println(itr.next());
          }
               
       }

}

import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.ListIterator;
import java.util.PriorityQueue;
import java.util.TreeSet;


public class Cdemo1 {
       public static void main(String[] args) {
              PriorityQueue<String> queue=new PriorityQueue<String>(); 
              queue.add("Amit"); 
              queue.add("Vijay"); 
              queue.add("Karan"); 
              queue.add("Jai"); 
              queue.add("Rahul"); 
               
              System.out.println("head:"+queue.element()); 
              System.out.println("head:"+queue.peek()); 
               
              System.out.println("iterating the queue elements:"); 
              Iterator itr=queue.iterator(); 
              while(itr.hasNext()){ 
              System.out.println(itr.next()); 
              } 
               
              queue.remove(); 
              queue.poll(); 
               
              System.out.println("after removing two elements:"); 
              Iterator<String> itr2=queue.iterator(); 
              while(itr2.hasNext()){ 
              System.out.println(itr2.next()); 
              } 
               
              } 
              } 









No comments:

Post a Comment