SlideShare a Scribd company logo
1 of 30
Download to read offline
Programming in Java
Lecture 10: Arrays
By
Ravi Kant Sahu
Asst. Professor, LPU
Array
• Definition:
An array is a group/collection of variables of the
same type that are referred to by a common name.
• Arrays of any type can be created and may have one
or more dimensions.
• A specific element in an array is accessed by its index
(subscript).
• Examples:
• Collection of numbers
• Collection of names
• Collection of suffixes
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Array of numbers:
Array of names:
Array of suffixes:
Examples
10 23 863 8 229
ment tion ness ves
Sam Shanu Riya
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
One-Dimensional Arrays
• A one-dimensional array is a list of variables of same
type.
• The general form of a one-dimensional array
declaration is:
type var-name[ ]; array-var = new type[size];
or, type var-name[ ] = new type[size];
Example:
int num [] = new int [10];
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Declaration of array variable:
data-type variable-name[];
eg. int marks[];
This will declare an array named ‘marks’ of type ‘int’. But no memory is
allocated to the array.
Allocation of memory:
variable-name = new data-type[size];
eg. marks = new int[5];
This will allocate memory of 5 integers to the array ‘marks’ and it can store upto
5 integers in it. ‘new’ is a special operator that allocates memory.
Syntax
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Accessing elements in the array:
• Specific element in the array is accessed by specifying
name of the array followed the index of the element.
• All array indexes in Java start at zero.
variable-name[index] = value;
Example:
marks[0] = 10;
This will assign the value 10 to the 1st element in the array.
marks[2] = 863;;
This will assign the value 863 to the 3rd element in the array.
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
STEP 1 : (Declaration)
int marks[];
marks  null
STEP 2: (Memory Allocation)
marks = new int[5];
marks 
marks[0] marks[1] marks[2] marks[3] marks[4]
STEP 3: (Accessing Elements)
marks[0] = 10;
marks 
marks[0] marks[1] marks[2] marks[3] marks[4]
Example
0 0 0 0 0
10 0 0 0 0
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
• Size of an array can’t be changed after the array is created.
• Default values:
– zero (0) for numeric data types,
– u0000 for chars and
– false for boolean types
• Length of an array can be obtained as:
array_ref_var.length
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Example
class Demo_Array
{
public static void main(String args[])
{
int marks[];
marks = new int[3];
marks[0] = 10;
marks[1] = 35;
marks[2] = 84;
System.out.println(“Marks of 2nd student=” + marks[1]);
}
}
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
• Arrays can store elements of the same data type. Hence an
int array CAN NOT store an element which is not an int.
• Though an element of a compatible type can be converted
to int and stored into the int array.
eg. marks[2] = (int) 22.5;
This will convert ‘22.5’ into the int part ‘22’ and store it into the 3rd place
in the int array ‘marks’.
• Array indexes start from zero. Hence ‘marks[index]’ refers
to the (index+1)th element in the array and ‘marks[size-1]’
refers to last element in the array.
Note
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Array Initialization
1. data Type [] array_ref_var = {value0, value1, …, value n};
2. data Type [] array_ref_var;
array_ref_var = {value0, value1, …,value n};
3. data Type [] array_ref_var = new data Type [n+1];
array_ref_var [0] = value 0;
array_ref_var [1] = value 1;
…
array_ref_var [n] = value n;
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Example
int[] v = new int[10];
int i = 7;
int j = 2;
int k = 4;
v[0] = 1;
v[i] = 5;
v[j] = v[i] + 3;
v[j+1] = v[i] + v[0];
v[v[j]] = 12;
System.out.println(v[2]);
v[k] = stdin.nextInt();
v 00 0 00 0 00 00
v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Example
int[] v = new int[10];
int i = 7;
int j = 2;
int k = 4;
v[0] = 1;
v[i] = 5;
v[j] = v[i] + 3;
v[j+1] = v[i] + v[0];
v[v[j]] = 12;
System.out.println(v[2]);
v[k] = stdin.nextInt();
v 01 0 00 0 00 00
v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
Example
int[] v = new int[10];
int i = 7;
int j = 2;
int k = 4;
v[0] = 1;
v[i] = 5;
v[j] = v[i] + 3;
v[j+1] = v[i] + v[0];
v[v[j]] = 12;
System.out.println(v[2]);
v[k] = stdin.nextInt();
v 01 0 00 0 50 00
v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
Example
int[] v = new int[10];
int i = 7;
int j = 2;
int k = 4;
v[0] = 1;
v[i] = 5;
v[j] = v[i] + 3;
v[j+1] = v[i] + v[0];
v[v[j]] = 12;
System.out.println(v[2]);
v[k] = stdin.nextInt();
v 81 0 00 0 50 00
v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
Example
int[] v = new int[10];
int i = 7;
int j = 2;
int k = 4;
v[0] = 1;
v[i] = 5;
v[j] = v[i] + 3;
v[j+1] = v[i] + v[0];
v[v[j]] = 12;
System.out.println(v[2]);
v[k] = stdin.nextInt();
v 81 0 06 0 50 00
v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
Example
int[] v = new int[10];
int i = 7;
int j = 2;
int k = 4;
v[0] = 1;
v[i] = 5;
v[j] = v[i] + 3;
v[j+1] = v[i] + v[0];
v[v[j]] = 12;
System.out.println(v[2]);
v[k] = stdin.nextInt();
v 81 0 06 0 50 012
v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
Example
int[] v = new int[10];
int i = 7;
int j = 2;
int k = 4;
v[0] = 1;
v[i] = 5;
v[j] = v[i] + 3;
v[j+1] = v[i] + v[0];
v[v[j]] = 12;
System.out.println(v[2]);
v[k] = stdin.nextInt();
v 81 0 06 0 50 012
v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
8 is displayed
Example
int[] v = new int[10];
int i = 7;
int j = 2;
int k = 4;
v[0] = 1;
v[i] = 5;
v[j] = v[i] + 3;
v[j+1] = v[i] + v[0];
v[v[j]] = 12;
System.out.println(v[2]);
v[k] = stdin.nextInt();
v 81 0 06 3 50 012
v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
Suppose 3 is extracted
Multi-Dimensional Array
• Multidimensional arrays are arrays of arrays.
• Two-Dimensional arrays are used to represent a table or a
matrix.
• Creating Two-Dimensional Array:
int twoD[][] = new int[4][5];
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Conceptual View of 2-Dimensional Array
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
class TwoDimArr
{
public static void main(String args[])
{
int twoD[][]= new int[4][5];
int i, j, k = 0;
for(i=0; i<4; i++)
for(j=0; j<5; j++)
{
twoD[i][j] = k;
k++;
}
for(i=0; i<4; i++)
{
for(j=0; j<5; j++)
System.out.print(twoD[i][j] + " ");
System.out.println();
}
}
}
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
• When we allocate memory for a multidimensional
array, we need to only specify the memory for the
first (leftmost) dimension.
int twoD[][] = new int[4][];
• The other dimensions can be assigned manually.
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
// Manually allocate differing size second dimensions.
class TwoDAgain {
public static void main(String args[]) {
int twoD[][] = new int[4][];
twoD[0] = new int[1];
twoD[1] = new int[2];
twoD[2] = new int[3];
twoD[3] = new int[4];
int i, j, k = 0;
for(i=0; i<4; i++)
for(j=0; j<i+1; j++)
{
twoD[i][j] = k;
k++;
}
for(i=0; i<4; i++) {
for(j=0; j<i+1; j++)
System.out.print(twoD[i][j] + " ");
System.out.println();
}
}
}Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Initializing Multi-Dimensional Array
class Matrix {
public static void main(String args[]) {
double m[][] = {
{ 0*0, 1*0, 2*0, 3*0 },
{ 0*1, 1*1, 2*1, 3*1 },
{ 0*2, 1*2, 2*2, 3*2 },
{ 0*3, 1*3, 2*3, 3*3 }
};
int i, j;
for(i=0; i<4; i++) {
for(j=0; j<4; j++)
System.out.print(m[i][j] + " ");
System.out.println();
}
}
}
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Alternative Array Declaration
type[ ] var-name;
• Example:
char twod1[][] = new char[3][4];
char[][] twod2 = new char[3][4];
• This alternative declaration form offers convenience
when declaring several arrays at the same time.
• Example: int[] nums, nums2, nums3;
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Array Cloning
• To actually create another array with its own values,
Java provides the clone()method.
• arr2 = arr1; (assignment)
is not equivalent to
arr2 = arr1.clone(); (cloning)
Example: ArrayCloning.java
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Array as Argument
• Arrays can be passed as an argument to any method.
Example:
void show ( int []) {}
public static void main(String arr[]) {}
void compareArray(int [] a, int [] b ){}
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Array as a return Type
• Arrays can also be returned as the return type of any
method
Example:
public int [] Result (int roll_No, int marks )
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Array

More Related Content

What's hot

What's hot (20)

serializability in dbms
serializability in dbmsserializability in dbms
serializability in dbms
 
SQL Commands
SQL Commands SQL Commands
SQL Commands
 
Sql Authorization
Sql AuthorizationSql Authorization
Sql Authorization
 
Sql Functions And Procedures
Sql Functions And ProceduresSql Functions And Procedures
Sql Functions And Procedures
 
SQL, Embedded SQL, Dynamic SQL and SQLJ
SQL, Embedded SQL, Dynamic SQL and SQLJSQL, Embedded SQL, Dynamic SQL and SQLJ
SQL, Embedded SQL, Dynamic SQL and SQLJ
 
joins in database
 joins in database joins in database
joins in database
 
Oracle Database Trigger
Oracle Database TriggerOracle Database Trigger
Oracle Database Trigger
 
Control structures in java
Control structures in javaControl structures in java
Control structures in java
 
Degree of relationship set
Degree of relationship setDegree of relationship set
Degree of relationship set
 
XML Document Object Model (DOM)
XML Document Object Model (DOM)XML Document Object Model (DOM)
XML Document Object Model (DOM)
 
Java input
Java inputJava input
Java input
 
Performance analysis(Time & Space Complexity)
Performance analysis(Time & Space Complexity)Performance analysis(Time & Space Complexity)
Performance analysis(Time & Space Complexity)
 
Internationalization
InternationalizationInternationalization
Internationalization
 
Core java concepts
Core java  conceptsCore java  concepts
Core java concepts
 
ERD(2).ppt
ERD(2).pptERD(2).ppt
ERD(2).ppt
 
Servlet and servlet life cycle
Servlet and servlet life cycleServlet and servlet life cycle
Servlet and servlet life cycle
 
SQL Views
SQL ViewsSQL Views
SQL Views
 
Data structure lecture 2
Data structure lecture 2Data structure lecture 2
Data structure lecture 2
 
Query processing
Query processingQuery processing
Query processing
 
Java String Handling
Java String HandlingJava String Handling
Java String Handling
 

Viewers also liked

Viewers also liked (18)

Keywords and classes
Keywords and classesKeywords and classes
Keywords and classes
 
Methods and constructors
Methods and constructorsMethods and constructors
Methods and constructors
 
Basic IO
Basic IOBasic IO
Basic IO
 
L2 datatypes and variables
L2 datatypes and variablesL2 datatypes and variables
L2 datatypes and variables
 
Exception handling
Exception handlingException handling
Exception handling
 
String handling(string buffer class)
String handling(string buffer class)String handling(string buffer class)
String handling(string buffer class)
 
Wrapper classes
Wrapper classesWrapper classes
Wrapper classes
 
Event handling
Event handlingEvent handling
Event handling
 
Packages
PackagesPackages
Packages
 
Multi threading
Multi threadingMulti threading
Multi threading
 
Operators in java
Operators in javaOperators in java
Operators in java
 
Classes and Nested Classes in Java
Classes and Nested Classes in JavaClasses and Nested Classes in Java
Classes and Nested Classes in Java
 
String handling(string class)
String handling(string class)String handling(string class)
String handling(string class)
 
Inheritance
InheritanceInheritance
Inheritance
 
Applets
AppletsApplets
Applets
 
Gui programming (awt)
Gui programming (awt)Gui programming (awt)
Gui programming (awt)
 
Introduction to Java Programming
Introduction to Java ProgrammingIntroduction to Java Programming
Introduction to Java Programming
 
Control structures in Java
Control structures in JavaControl structures in Java
Control structures in Java
 

Similar to Array (20)

Java - Arrays Concepts
Java - Arrays ConceptsJava - Arrays Concepts
Java - Arrays Concepts
 
07slide.ppt
07slide.ppt07slide.ppt
07slide.ppt
 
Lecture 6
Lecture 6Lecture 6
Lecture 6
 
Generics
GenericsGenerics
Generics
 
Java™ (OOP) - Chapter 6: "Arrays"
Java™ (OOP) - Chapter 6: "Arrays"Java™ (OOP) - Chapter 6: "Arrays"
Java™ (OOP) - Chapter 6: "Arrays"
 
06slide
06slide06slide
06slide
 
Array
ArrayArray
Array
 
07+08slide.pptx
07+08slide.pptx07+08slide.pptx
07+08slide.pptx
 
Lecture 7 arrays
Lecture   7 arraysLecture   7 arrays
Lecture 7 arrays
 
DSA 103 Object Oriented Programming :: Week 5
DSA 103 Object Oriented Programming :: Week 5DSA 103 Object Oriented Programming :: Week 5
DSA 103 Object Oriented Programming :: Week 5
 
Pi j3.4 data-structures
Pi j3.4 data-structuresPi j3.4 data-structures
Pi j3.4 data-structures
 
Multi dimensional arrays
Multi dimensional arraysMulti dimensional arrays
Multi dimensional arrays
 
Java Arrays
Java ArraysJava Arrays
Java Arrays
 
Java arrays
Java arraysJava arrays
Java arrays
 
C Language Lecture 10
C Language Lecture 10C Language Lecture 10
C Language Lecture 10
 
Java arrays
Java    arraysJava    arrays
Java arrays
 
6 arrays injava
6 arrays injava6 arrays injava
6 arrays injava
 
CAP615-Unit1.pptx
CAP615-Unit1.pptxCAP615-Unit1.pptx
CAP615-Unit1.pptx
 
6_Array.pptx
6_Array.pptx6_Array.pptx
6_Array.pptx
 
JavaProgramming 17321_CS202-Chapter8.ppt
JavaProgramming 17321_CS202-Chapter8.pptJavaProgramming 17321_CS202-Chapter8.ppt
JavaProgramming 17321_CS202-Chapter8.ppt
 

More from Ravi_Kant_Sahu

More from Ravi_Kant_Sahu (9)

Common Programming Errors by Beginners in Java
Common Programming Errors by Beginners in JavaCommon Programming Errors by Beginners in Java
Common Programming Errors by Beginners in Java
 
Event handling
Event handlingEvent handling
Event handling
 
List classes
List classesList classes
List classes
 
Collection framework
Collection frameworkCollection framework
Collection framework
 
String handling(string class)
String handling(string class)String handling(string class)
String handling(string class)
 
Java keywords
Java keywordsJava keywords
Java keywords
 
Jdbc
JdbcJdbc
Jdbc
 
Swing api
Swing apiSwing api
Swing api
 
Genesis and Overview of Java
Genesis and Overview of Java Genesis and Overview of Java
Genesis and Overview of Java
 

Recently uploaded

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

Array

  • 1. Programming in Java Lecture 10: Arrays By Ravi Kant Sahu Asst. Professor, LPU
  • 2. Array • Definition: An array is a group/collection of variables of the same type that are referred to by a common name. • Arrays of any type can be created and may have one or more dimensions. • A specific element in an array is accessed by its index (subscript). • Examples: • Collection of numbers • Collection of names • Collection of suffixes Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 3. Array of numbers: Array of names: Array of suffixes: Examples 10 23 863 8 229 ment tion ness ves Sam Shanu Riya Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 4. One-Dimensional Arrays • A one-dimensional array is a list of variables of same type. • The general form of a one-dimensional array declaration is: type var-name[ ]; array-var = new type[size]; or, type var-name[ ] = new type[size]; Example: int num [] = new int [10]; Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 5. Declaration of array variable: data-type variable-name[]; eg. int marks[]; This will declare an array named ‘marks’ of type ‘int’. But no memory is allocated to the array. Allocation of memory: variable-name = new data-type[size]; eg. marks = new int[5]; This will allocate memory of 5 integers to the array ‘marks’ and it can store upto 5 integers in it. ‘new’ is a special operator that allocates memory. Syntax Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 6. Accessing elements in the array: • Specific element in the array is accessed by specifying name of the array followed the index of the element. • All array indexes in Java start at zero. variable-name[index] = value; Example: marks[0] = 10; This will assign the value 10 to the 1st element in the array. marks[2] = 863;; This will assign the value 863 to the 3rd element in the array. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 7. STEP 1 : (Declaration) int marks[]; marks  null STEP 2: (Memory Allocation) marks = new int[5]; marks  marks[0] marks[1] marks[2] marks[3] marks[4] STEP 3: (Accessing Elements) marks[0] = 10; marks  marks[0] marks[1] marks[2] marks[3] marks[4] Example 0 0 0 0 0 10 0 0 0 0 Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 8. • Size of an array can’t be changed after the array is created. • Default values: – zero (0) for numeric data types, – u0000 for chars and – false for boolean types • Length of an array can be obtained as: array_ref_var.length Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 9. Example class Demo_Array { public static void main(String args[]) { int marks[]; marks = new int[3]; marks[0] = 10; marks[1] = 35; marks[2] = 84; System.out.println(“Marks of 2nd student=” + marks[1]); } } Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 10. • Arrays can store elements of the same data type. Hence an int array CAN NOT store an element which is not an int. • Though an element of a compatible type can be converted to int and stored into the int array. eg. marks[2] = (int) 22.5; This will convert ‘22.5’ into the int part ‘22’ and store it into the 3rd place in the int array ‘marks’. • Array indexes start from zero. Hence ‘marks[index]’ refers to the (index+1)th element in the array and ‘marks[size-1]’ refers to last element in the array. Note Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 11. Array Initialization 1. data Type [] array_ref_var = {value0, value1, …, value n}; 2. data Type [] array_ref_var; array_ref_var = {value0, value1, …,value n}; 3. data Type [] array_ref_var = new data Type [n+1]; array_ref_var [0] = value 0; array_ref_var [1] = value 1; … array_ref_var [n] = value n; Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 12. Example int[] v = new int[10]; int i = 7; int j = 2; int k = 4; v[0] = 1; v[i] = 5; v[j] = v[i] + 3; v[j+1] = v[i] + v[0]; v[v[j]] = 12; System.out.println(v[2]); v[k] = stdin.nextInt(); v 00 0 00 0 00 00 v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8] Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 13. Example int[] v = new int[10]; int i = 7; int j = 2; int k = 4; v[0] = 1; v[i] = 5; v[j] = v[i] + 3; v[j+1] = v[i] + v[0]; v[v[j]] = 12; System.out.println(v[2]); v[k] = stdin.nextInt(); v 01 0 00 0 00 00 v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
  • 14. Example int[] v = new int[10]; int i = 7; int j = 2; int k = 4; v[0] = 1; v[i] = 5; v[j] = v[i] + 3; v[j+1] = v[i] + v[0]; v[v[j]] = 12; System.out.println(v[2]); v[k] = stdin.nextInt(); v 01 0 00 0 50 00 v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
  • 15. Example int[] v = new int[10]; int i = 7; int j = 2; int k = 4; v[0] = 1; v[i] = 5; v[j] = v[i] + 3; v[j+1] = v[i] + v[0]; v[v[j]] = 12; System.out.println(v[2]); v[k] = stdin.nextInt(); v 81 0 00 0 50 00 v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
  • 16. Example int[] v = new int[10]; int i = 7; int j = 2; int k = 4; v[0] = 1; v[i] = 5; v[j] = v[i] + 3; v[j+1] = v[i] + v[0]; v[v[j]] = 12; System.out.println(v[2]); v[k] = stdin.nextInt(); v 81 0 06 0 50 00 v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
  • 17. Example int[] v = new int[10]; int i = 7; int j = 2; int k = 4; v[0] = 1; v[i] = 5; v[j] = v[i] + 3; v[j+1] = v[i] + v[0]; v[v[j]] = 12; System.out.println(v[2]); v[k] = stdin.nextInt(); v 81 0 06 0 50 012 v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8]
  • 18. Example int[] v = new int[10]; int i = 7; int j = 2; int k = 4; v[0] = 1; v[i] = 5; v[j] = v[i] + 3; v[j+1] = v[i] + v[0]; v[v[j]] = 12; System.out.println(v[2]); v[k] = stdin.nextInt(); v 81 0 06 0 50 012 v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8] 8 is displayed
  • 19. Example int[] v = new int[10]; int i = 7; int j = 2; int k = 4; v[0] = 1; v[i] = 5; v[j] = v[i] + 3; v[j+1] = v[i] + v[0]; v[v[j]] = 12; System.out.println(v[2]); v[k] = stdin.nextInt(); v 81 0 06 3 50 012 v[2]v[0] v[1] v[5]v[3] v[4] v[7]v[6] v[9]v[8] Suppose 3 is extracted
  • 20. Multi-Dimensional Array • Multidimensional arrays are arrays of arrays. • Two-Dimensional arrays are used to represent a table or a matrix. • Creating Two-Dimensional Array: int twoD[][] = new int[4][5]; Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 21. Conceptual View of 2-Dimensional Array Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 22. class TwoDimArr { public static void main(String args[]) { int twoD[][]= new int[4][5]; int i, j, k = 0; for(i=0; i<4; i++) for(j=0; j<5; j++) { twoD[i][j] = k; k++; } for(i=0; i<4; i++) { for(j=0; j<5; j++) System.out.print(twoD[i][j] + " "); System.out.println(); } } } Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 23. • When we allocate memory for a multidimensional array, we need to only specify the memory for the first (leftmost) dimension. int twoD[][] = new int[4][]; • The other dimensions can be assigned manually. Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 24. // Manually allocate differing size second dimensions. class TwoDAgain { public static void main(String args[]) { int twoD[][] = new int[4][]; twoD[0] = new int[1]; twoD[1] = new int[2]; twoD[2] = new int[3]; twoD[3] = new int[4]; int i, j, k = 0; for(i=0; i<4; i++) for(j=0; j<i+1; j++) { twoD[i][j] = k; k++; } for(i=0; i<4; i++) { for(j=0; j<i+1; j++) System.out.print(twoD[i][j] + " "); System.out.println(); } } }Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 25. Initializing Multi-Dimensional Array class Matrix { public static void main(String args[]) { double m[][] = { { 0*0, 1*0, 2*0, 3*0 }, { 0*1, 1*1, 2*1, 3*1 }, { 0*2, 1*2, 2*2, 3*2 }, { 0*3, 1*3, 2*3, 3*3 } }; int i, j; for(i=0; i<4; i++) { for(j=0; j<4; j++) System.out.print(m[i][j] + " "); System.out.println(); } } } Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 26. Alternative Array Declaration type[ ] var-name; • Example: char twod1[][] = new char[3][4]; char[][] twod2 = new char[3][4]; • This alternative declaration form offers convenience when declaring several arrays at the same time. • Example: int[] nums, nums2, nums3; Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 27. Array Cloning • To actually create another array with its own values, Java provides the clone()method. • arr2 = arr1; (assignment) is not equivalent to arr2 = arr1.clone(); (cloning) Example: ArrayCloning.java Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 28. Array as Argument • Arrays can be passed as an argument to any method. Example: void show ( int []) {} public static void main(String arr[]) {} void compareArray(int [] a, int [] b ){} Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
  • 29. Array as a return Type • Arrays can also be returned as the return type of any method Example: public int [] Result (int roll_No, int marks ) Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)