You are on page 1of 12

Collections-

it is nothing but the framework defined in java.

it provides architecture to store & manipulate the group of objects.

Clasess & interfaces-

1) arraylist-

ex-

package collectionsp;

import java.util.ArrayList;

public class ArrayListClass {

public static void main(String[] args) {

int [] i=new int[3];

ArrayList <Integer> al=new ArrayList<Integer>();

al.add(10);
al.add(20);
al.add(30);

System.out.println(al);

ArrayList <String> al1=new ArrayList<String>();

al1.add("Pune");
al1.add("Mumbai");
al1.add("Thane");

System.out.println(al1);

List of method-

add()- add data in the list

set();- set values at gievn index

remove()-
removeAll()-

addAll()-

ex-

package collectionsp;

import java.util.ArrayList;

public class ArrayListClass {

public static void main(String[] args) {

ArrayList <Integer> al=new ArrayList<Integer>();

al.add(10);
al.add(20);
al.add(30);
al.add(40);

System.out.println(al);

ArrayList <Integer> al1=new ArrayList<Integer>();


al1.add(70);
al1.add(80);
al1.add(90);

//al.addAll(al1);
System.out.println(al);

if (!al.containsAll(al1)) {
System.out.println("True");
al.addAll(al1);
} else {

System.out.println("false");
}

System.out.println(al);

package collectionsp;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class ArrayListClass {

public static void main(String[] args) {

//From list to arrays

ArrayList <String> al=new ArrayList<String>();

al.add("pune");
al.add("Mumbai");
al.add("Thane");
al.add("Nashik");

System.out.println(al);

String []arrays=new String[al.size()];


al.toArray(arrays);
for (String itr:arrays) {

System.out.println(itr);

package collectionsp;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class ArrayListClass {

public static void main(String[] args) {

//From arrays to List conversion


String []arrays= {"Nagpur", "Manmad", "Ahmednagr"};
//From list to arrays

ArrayList <String> al=new ArrayList<String>(Arrays.asList(arrays));

al.add("pune");
al.add("Mumbai");
al.add("Thane");
al.add("Nashik");

System.out.println(al);

}
}

Arraylist are follwing insertion order.


Arraylist allows duplicate values.

ex-
package collectionsp;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;

public class ArrayListClass {

public static void main(String[] args) {

//From arrays to List conversion


String []arrays= {"Nagpur", "Manmad", "Ahmednagr"};
//From list to arrays

ArrayList <String> al=new ArrayList<String>(Arrays.asList(arrays));

al.add("pune");
al.add("pune");
al.add("Mumbai");
al.add("Mumbai");
al.add("Thane");
al.add("Nashik");

System.out.println(al);

if (al.contains("Mumbai")) {

al.remove("Mumbai"); }

System.out.println(al);
if (!al.contains("Aurangabad")) {

al.add("Aurangabad");
}
System.out.println(al);

LinkedList<String> ll=new LinkedList<String>();

ll.add("Hi");
ll.add("Bye");
ll.addAll(al);
System.out.println(ll);

}
}

when we want to iterate on the values of cxollection

ex-
package collectionsp;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

public class ArrayListClass {

public static void main(String[] args) {

//From arrays to List conversion


String []arrays= {"Nagpur", "Manmad", "Ahmednagr"};
//From list to arrays

ArrayList <String> al=new ArrayList<String>(Arrays.asList(arrays));

al.add("pune");
al.add("pune");
al.add("Mumbai");
al.add("Mumbai");
al.add("Thane");
al.add("Nashik");

System.out.println(al);

if (al.contains("Mumbai")) {

al.remove("Mumbai"); }

System.out.println(al);
if (!al.contains("Aurangabad")) {

al.add("Aurangabad");
}
System.out.println(al);

LinkedList<String> ll=new LinkedList<String>();

ll.add("Hi");
ll.add("Bye");
ll.addAll(al);
System.out.println(ll);

Iterator<String> itr=ll.iterator();

while(itr.hasNext()) {

String value=itr.next();
System.out.println(value);
}

List iterator for List implementing classes-

ex--
package collectionsp;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;
import java.util.NavigableSet;
import java.util.TreeSet;

public class ArrayListClass {

public static void main(String[] args) {

//From arrays to List conversion


String []arrays= {"Nagpur", "Manmad", "Ahmednagr"};
//From list to arrays

ArrayList <String> al=new ArrayList<String>(Arrays.asList(arrays));

al.add("Pune");
al.add("Pune");
al.add("Mumbai");
al.add("Mumbai");
al.add("Thane");
al.add("Nashik");

ListIterator<String>lstr= al.listIterator();

while (lstr.hasNext() ) {

String s=lstr.next();
System.out.println(s);

}
System.out.println("============================");

while (lstr.hasPrevious()) {

String s=lstr.previous();
System.out.println(s);

--------------------------------

When we dont want to maintain insertion order and duplicate value


then we go for Hashset.

ex-
package collectionsp;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

public class ArrayListClass {

public static void main(String[] args) {

//From arrays to List conversion


String []arrays= {"Nagpur", "Manmad", "Ahmednagr"};
//From list to arrays

ArrayList <String> al=new ArrayList<String>(Arrays.asList(arrays));

al.add("pune");
al.add("pune");
al.add("Mumbai");
al.add("Mumbai");
al.add("Thane");
al.add("Nashik");

System.out.println(al);

HashSet<String> hs=new HashSet<String>();

hs.add("Dubai");
hs.add("Bankok");
hs.addAll(al);
System.out.println(hs);

}
Treeset-

No null values accpted


By default is scending order
Duplicate are not allowed

ex-

package collectionsp;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.NavigableSet;
import java.util.TreeSet;

public class ArrayListClass {

public static void main(String[] args) {

//From arrays to List conversion


String []arrays= {"Nagpur", "Manmad", "Ahmednagr"};
//From list to arrays

ArrayList <String> al=new ArrayList<String>(Arrays.asList(arrays));

al.add("Pune");
al.add("Pune");
al.add("Mumbai");
al.add("Mumbai");
al.add("Thane");
al.add("Nashik");

System.out.println(al);

HashSet<String> hs=new HashSet<String>();

hs.add("Dubai");
hs.add("Bankok");
hs.addAll(al);
hs.add(null);
hs.add(null);
System.out.println(hs);

LinkedHashSet<String>lhs=new LinkedHashSet<String>();
lhs.add("Dubai");
lhs.add("Bankok");
lhs.addAll(al);
lhs.add(null);

System.out.println(lhs);

TreeSet<String> tr=new TreeSet<String>();


tr.addAll(al);
System.out.println(tr);

NavigableSet<String> val=tr.descendingSet();
System.out.println(val);

}
o/p-
[Nagpur, Manmad, Ahmednagr, Pune, Pune, Mumbai, Mumbai, Thane, Nashik]
[null, Bankok, Thane, Nagpur, Manmad, Pune, Ahmednagr, Nashik, Dubai, Mumbai]
[Dubai, Bankok, Nagpur, Manmad, Ahmednagr, Pune, Mumbai, Thane, Nashik, null]
[Ahmednagr, Manmad, Mumbai, Nagpur, Nashik, Pune, Thane]
[Thane, Pune, Nashik, Nagpur, Mumbai, Manmad, Ahmednagr]

----------------------------------------------------------------------------------

Map -

When we ahve data in the form of keys and value then we go for Hashmap

Keys are aleays unique- no duplicate values are allowed

values can be duplicate

ex-
package collectionsp;

import java.util.HashMap;

public class MapParctice {

public static void main(String[] args) {

HashMap<Integer,String> hm=new HashMap<Integer, String>();

hm.put(1, "Ram");
hm.put(2, "Raj");
hm.put(3, "Aliya");
hm.put(4, "Rio");
hm.put(5, "Rio");
hm.put(5, "Rio");
System.out.println(hm);
}

}
o/p-
{1=Ram, 2=Raj, 3=Aliya, 4=Rio, 5=Rio}

ex-2
package collectionsp;

import java.util.Collection;
import java.util.HashMap;
import java.util.Set;

public class MapParctice {

public static void main(String[] args) {

HashMap<Integer,String> hm=new HashMap<Integer, String>();

hm.put(1, "Ram");
hm.put(2, "Raj");
hm.put(3, "Aliya");
hm.put(4, "Rio");
hm.put(5, "Rio");
hm.put(5, "Rio");
System.out.println(hm);

//Updating values base on key


Set<Integer>key=hm.keySet();

for (Integer keyVal:key) {

if (keyVal==5) {
hm.replace(5, "Bangkok");
}

}
System.out.println(hm);

Collection<String> val=hm.values();

for (String values:val) {

System.out.println(values);
if(values.equals("Aliya")) {

hm.replace(3, "Pune");
}
}
System.out.println(hm);
}

------------------------------------------

Count charcters count from given string-

ex-
package collectionsp;

import java.util.Collection;
import java.util.HashMap;
import java.util.Set;
public class MapParctice {

public static void main(String[] args) {

String s="aabbcccddeeeeffrg";

char[] charArrays=s.toCharArray();

HashMap<Character, Integer> hm=new HashMap<Character, Integer>();

for (char ch:charArrays) {

if (hm.containsKey(ch)) {

hm.put(ch, hm.get(ch)+1);
}
else {
hm.put(ch, 1);
}

}
System.out.println(hm);

}
o/p-
{a=2, b=2, r=1, c=3, d=2, e=4, f=2, g=1}

if we want to preserve the insertion order the we go for LinkedHashMap

ex-
package collectionsp;

import java.util.Collection;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Set;

public class MapParctice {

public static void main(String[] args) {

String s="aabbcccddeeeeffrg";

char[] charArrays=s.toCharArray();

LinkedHashMap<Character, Integer> hm=new LinkedHashMap<Character,


Integer>();

for (char ch:charArrays) {

if (hm.containsKey(ch)) {

hm.put(ch, hm.get(ch)+1);
}
else {
hm.put(ch, 1);
}

}
System.out.println(hm);

}
o/p
{a=2, b=2, c=3, d=2, e=4, f=2, r=1, g=1}

When we want to asend base on the keys then we go for treemap

ex-
package collectionsp;

import java.util.Collection;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Set;
import java.util.TreeMap;

public class MapParctice {

public static void main(String[] args) {

String s="aabbcccddeeeeffrg";

char[] charArrays=s.toCharArray();

TreeMap<Character, Integer> hm=new TreeMap<Character, Integer>();

for (char ch:charArrays) {

if (hm.containsKey(ch)) {

hm.put(ch, hm.get(ch)+1);
}
else {
hm.put(ch, 1);
}

}
System.out.println(hm);

}
o/p-
{a=2, b=2, c=3, d=2, e=4, f=2, g=1, r=1}

You might also like