நிரலாக்க மொழிகளில் பொதுவாக அர்ரேயின்
சைஸ் கம்பைல் நேரத்தில் குறிப்பிட்டுள்ள போல் தான் அமையும். இயக்க நேரத்தில் அதன்
அளவை கூட்டவோ அல்லது குறைக்கவோ முடியாது. அர்ரே லிஸ்ட் ஒரு டைனமிக் அர்ரேயாகும்.
அர்ரே போல் அல்லாது அதன் அளவை இயக்க நேரத்தில் கூட்டவோ குறைக்கவோ முடியும்.
ArrayList கிளாஸ் ஆனது AbstractList
கிளாஸை இன்ஹெரிட் செய்கின்றது.List என்ற இன்டர்ஃபேசை இம்ப்ளிமென்ட் செய்கின்றது
அர்ரேலிஸ்ட் பற்றிய குறிப்புகள்:
- இதில் டூப்ளிகேட் எலிமென்டுகள் இருக்கலாம்.
- எந்த ஆர்டரில் இன்செர்ட் செய்கின்றோம் என்பதை அழியாமல் பேணுகின்றது. இது is non synchronized கிளாஸ் ஆகும். இதன் எலிமெண்டுகளை ரேண்டம் முறையில் அனுகலாம்.
- அர்ரேலிஸ்ட் கிளாஸை பொறுத்த வரை இதை கையாளுதல் மெதுவானதாகும். ஏனெனில் ஒரு எலிமென்ட் ஆனது ரிமூவ் செய்யப்படும் போது மற்ற எலிமெண்டுகள் ஷிஃப்ட் செய்ய ரிடுகின்றது.
Constructors
of Java ArrayList
Constructor
|
Description
|
ArrayList()
|
இது வெற்று அர்ரேலிஸ்டை உருவாக்குகின்றது
|
ArrayList(Collection c)
|
இது கலக்சன் c –யில் இருக்கும்
எலிமெண்டுகளுடன் அ்ர்ரேலிஸ்டை உருவாக்குகின்றது.
|
ArrayList(int capacity)
|
இது குறிப்பிட்ட கெப்பாடிட்டியுடன்
அர்ரேலிஸை உருவாக்குகின்றது.
|
Methods
of Java ArrayList
Method
|
Description
|
void add(int index, Object
element)
|
இது குறிப்பிட்ட எலிமெண்டை
குறிப்பிட்ட இண்டெக்ஸில் இன்செர்ட் செய்கின்றது.
|
boolean addAll(Collection c)
|
இது ஒரு அர்ரேலிஸ்டின் முடிவில்
கலக்சன் C –யில் இருக்கும் எல்லா எலிமெண்டுகளையும் சேர்த்துக் கொள்கின்றது.
|
void clear()
|
இது எல்லா எலிமெண்டுககையும்
நீக்குகின்றது
|
int lastIndexOf(Object o)
|
இது ஒரு எலிமெண்டின் கடைசி
இண்டெக்ஸை ரிடர்ன் செய்கின்றது
|
Object[] toArray()
|
Iஇது
ஒரு அர்ரேலிஸ்டை அர்ரேயாக கன்வெர்ட் செய்து அனுப்புகின்றது
|
Object[] toArray(Object[] a)
|
இது ஒரு அர்ரேலிஸ்டின் எல்லா
எலிமெண்டுகளையும் அதன் ஆர்டரிலேயே அர்ரேயாக மாற்றி அனுப்பிகின்றது .
|
boolean add(Object o)
|
இந்த மெத்தட் ஆனது ஒரு ஆப்ஜெக்டை
அதன் முடிவில் சேர்த்துக் கொள்கின்றது.
|
boolean addAll(int index,
Collection c)
|
இது ஒரு கலக்சனை ஒரு அர்ரேலிஸ்டின்
குறிப்பிட்ட இண்டெக்ஸில் ஆட் செய்து கொள்கின்றது.
|
Object clone()
|
இது ஒரு அர்ரே லிஸ்டை அப்படியே நகல்
எடுக்கின்றது.
|
int indexOf(Object o)
|
இது ஒரு அர்ரேலிஸ்டில் குறிப்பிட்ட
எலிமெண்ட் எந்த இண்டெக்ஸில் முதலாவதாக இருக்கின்றது என்பதை ரிடர்ன் செய்கின்றது.
|
void trimToSize()
|
இது ஒரு அர்ரேலிஸ்டை அதன் தற்போதைய
அளவிற்கு டிரிம் செய்து கொள்கின்றது.
|
Java Non-generic Vs Generic Collection
Jdk 1.5 வெர்சனுக்கு முன் நான் ஜெனரிக் கலக்சன் தான் செயல்பட்டு வந்தது. அதாவது ஒரே அர்ரேலிஸ்டில் வெவ்வேறு வகையான டேட்டாக்களை சேமிக்கலாம். ஆனால் அது typesafe கிடையாது.
உதாரணம்.
ArrayList al=new ArrayList();//creating old non-generic arraylist
இப்பொழுது உள்ள வெர்சன்களில் ஜெனரிக் அர்ரேலிஸ்ட் உருவாக்கலாம். எனவே ரண்டைமில் வெவ்வேறு வகையான டேட்டாக்களை சேமிக்க இயலாது.
உதாரணம்.
ArrayList<String> al=new ArrayList<String>();//creating new generic arraylist
மேலே உள்ள அர்ரேலிஸ்ட் al என்பதில் string இனத்தைத் தவிர வேறு எந்த டைப்பிலும் டேட்டா சேமிக்க இயலாது.
.
அர்ரே
லிஸ்ட் சான்று நிரல்-1
import java.util.*;
class TestCollection1{
public static void main(String args[]){
ArrayList<String> list=new ArrayList<String>();//Creating arraylist
list.add("Muthu");//Adding object in arraylist
list.add("karthikeyan");
list.add("Muthu
");
list.add("karthikeyan
");
//Traversing list through Iterator
Iterator itr=list.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
}
}
வெளியீடு:
Muthu
Karthikeyan
Muthu
Karthikeyan
ஒரு கலக்சனில் உள்ள எலிமெண்டுகளை பின் வரும் இரண்டு வகைகளில்
அணுகலாம்.
1.
Iterator
interface பயன்படுத்தி.
2.
For each loop
பயன்படுத்தி
மேலே உள்ள நிரலில் iterator interface பயன்படுத்தி எழுதப்
பட்டுள்ளது.
கீழே
உள்ள நிரல் for rach பயன்படுத்தி எழுதப் பட்டுள்ளது.
import java.util.*;
class TestCollection2{
public static void main(String args[]){
ArrayList<String> al=new ArrayList<String>();
al.add("Rani");
al.add("Arun");
al.add("Rani");
al.add("Arun");
for(String obj:al)
System.out.println(obj);
}
}
வெளியீடு:
Rani
Arun
Rani
Arun
Students கிளாஸ் ஆப்ஜெக்டை எவ்வாறு கலக்சன் லிஸ்டில் சேமிப்பது
என்று கீழே உள்ள நிரலில் குறிப்பிடப் பட்டுள்ளது.
class Student{
int rollno;
String name;
int age;
Student(int rollno,String name,int age){
this.rollno=rollno;
this.name=name;
this.age=age;
}
}
import java.util.*;
public class TestCollection3{
public static void main(String args[]){
//Creating user-defined class objects
Student s1=new Student(101,"Muthu",25);
Student s2=new Student(102,"Ragu",28);
Student s2=new Student(103,"Hari",26);
//creating arraylist
ArrayList<Student> al=new ArrayList<Student>();
al.add(s1);//adding Student class object
al.add(s2);
al.add(s3);
//Getting Iterator
Iterator itr=al.iterator();
//traversing elements of ArrayList object
while(itr.hasNext()){
Student st=(Student)itr.next();
System.out.println(st.rollno+" "+st.name+" "+st.age);
}
}
}
வெளியீடு:
101 Muthu 25
102 Ragu 28
103 Hari 26
addAll(Collection c) method உதாரணம்.
import java.util.*;
class TestCollection4{
public static void main(String args[]){
ArrayList<String> al=new ArrayList<String>();
al.add("Ragu");
al.add("Vijay");
al.add("Arun");
ArrayList<String> al2=new ArrayList<String>();
al2.add("Subbu");
al2.add("Hari");
al.addAll(al2);//adding second list in first list
Iterator itr=al.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
}
}
வெளியீடு:
Ragu
Vijay
Arun
Subbu
Hari
removeAll() method உதாரணம்
import java.util.*;
class TestCollection5{
public static void main(String args[]){
ArrayList<String> al=new ArrayList<String>();
al.add("Ragu");
al.add("Vijay");
al.add("Arun");
ArrayList<String> al2=new ArrayList<String>();
al2.add("Ragu");
al2.add("Hari");
al.removeAll(al2);
System.out.println("iterating the elements after removing the elements of al2...");
Iterator itr=al.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
}
}
வெளியீடு:
iterating the elements after removing
the elements of al2...
Vijay
Arun
retainAll() method உதாரணம்.
import java.util.*;
class TestCollection6{
public static void main(String args[]){
ArrayList<String> al=new ArrayList<String>();
al.add("Ragu");
al.add("Vijay");
al.add("Arun");
ArrayList<String> al2=new ArrayList<String>();
al2.add("Ragu");
al2.add("Hari");
al.retainAll(al2);
System.out.println("iterating the elements after retaining the elements of al2...");
Iterator itr=al.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
}
}
வெளியீடு:
iterating the elements after retaining
the elements of al2...
Ragu
Java
ArrayList Book கிளாஸ் சான்று நிரல்.
import java.util.*;
class Book {
int id;
String name,author,publisher;
int quantity;
public Book(int id, String name, String author, String publisher, int quantity) {
this.id = id;
this.name = name;
this.author = author;
this.publisher = publisher;
this.quantity = quantity;
}
}
public class ArrayListExample {
public static void main(String[] args) {
//Creating list of Books
List<Book> list=new ArrayList<Book>();
//Creating Books
Book b1=new Book(101,"Every
one has a story" , "Savi sharma","Westland",10);
Book b2=new Book(102,"Will
you still love me","Ravinder singh","penguin",5);
//Adding Books to list
list.add(b1);
list.add(b2);
//Traversing list
for(Book b:list){
System.out.println(b.id+" "+b.name+" "+b.author+" "+b.publisher+" "+b.quantity);
}
}
}
வெளியீடு:
101 Every one has a story Savi Sharma Westland 10
102 Will you still love me Ravinder singh penguin 5
நன்றி
முத்து கார்த்திகேயன்,மதுரை.
No comments:
Post a Comment