ஜாவாவில் மேட்ரிக்ஸ் / 2டி வரிசை என்றால் என்ன?
"ஒரு அணி என்பது ஒரு குறிப்பிட்ட எண்ணிக்கையிலான வரிசைகள் மற்றும் நெடுவரிசைகளில் அமைக்கப்பட்ட எண்களின் தொகுப்பாகும்." பொதுவாக இவை உண்மையான எண்கள். பொதுவாக, மெட்ரிக்குகள் சிக்கலான எண்களைக் கொண்டிருக்கலாம், ஆனால் எளிமைக்காக நாம் முழு எண்களை மட்டுமே இங்கு பயன்படுத்துவோம். மேட்ரிக்ஸ் எப்படி இருக்கும் என்று பார்ப்போம். 4 வரிசைகள் மற்றும் 4 நெடுவரிசைகளைக் கொண்ட மேட்ரிக்ஸின் எடுத்துக்காட்டு இங்கே.2D வரிசையை அறிவித்து துவக்கவும்
வரிசையின் அளவை மட்டும் அறிவிக்க அல்லது அளவைக் குறிப்பிடாமல் அதைத் தொடங்குவதற்கு சில வேறுபட்ட வழிகள் இங்கே உள்ளன.
public class Matrices {
public static void main(String[] args) {
// declare & initialize 2D arrays for int and string
int[][] matrix1 = new int[2][2];
int matrix2[][] = new int[2][3];
//the size of matrix3 will be 4x4
int[][] matrix3 = { { 3, 2, 1, 7 },
{ 9, 11, 5, 4 },
{ 6, 0, 13, 17 },
{ 7, 21, 14, 15 } };
String[][] matrix4 = new String[2][2];
//the size of matrix5 will be 2x3
// 3 cols because at max there are 3 columns
String[][] matrix5 = { { "a", "lion", "meo" },
{ "jaguar", "hunt" } };
}
}
2டி வரிசை டிராவர்சல்
ஜாவாவில் வழக்கமான வரிசைகளை எவ்வாறு பயணிப்பது என்பது நம் அனைவருக்கும் தெரியும். 2D வரிசைகளுக்கு இது கடினமானது அல்ல. இதற்கு நாம் பொதுவாக உள்ளமைக்கப்பட்ட 'for' லூப்களைப் பயன்படுத்துகிறோம். சில ஆரம்பநிலையாளர்கள் இதை ஏதோ அன்னியக் கருத்து என்று நினைக்கலாம், ஆனால் நீங்கள் அதை ஆழமாக தோண்டியவுடன், சில நடைமுறைகளுடன் இதை செயல்படுத்த முடியும். பின்வரும் துணுக்கைப் பாருங்கள். இது உங்கள் முழுமையான புரிதலுக்காக ஒவ்வொரு வரிசைக்கும் தொடர்புடைய நெடுவரிசைகளின் எண்ணிக்கையை மட்டுமே காட்டுகிறது.
public class MatrixTraversal {
public static void main(String[] args) {
int[][] matrix = new int[4][4];
for (int i = 0; i < matrix.length; i++)
{
// length returns number of rows
System.out.print("row " + i + " : ");
for (int j = 0; j < matrix[i].length; j++)
{
// here length returns # of columns corresponding to current row
System.out.print("col " + j + " ");
}
System.out.println();
}
}
}
வெளியீடு
0 வரிசை
ஜாவாவில் 2டி அரேயை அச்சிடுவது எப்படி?
2டி அரே டிராவர்சல் பற்றி உங்களுக்குத் தெரிந்த பிறகு, ஜாவாவில் 2டி வரிசைகளை அச்சிடுவதற்கான சில வழிகளைப் பார்ப்போம்.Nested "for" loop ஐப் பயன்படுத்துதல்
ஜாவாவில் மேட்ரிக்ஸை அச்சிடுவதற்கான அடிப்படை வழி இதுவாகும்.
public class MatrixTraversal {
public static void printMatrix(int matrix[][])
{
for (int i = 0; i < matrix.length; i++)
{
// length returns number of rows
for (int j = 0; j < matrix[i].length; j++)
{
// here length returns number of columns corresponding to current row
// using tabs for equal spaces, looks better aligned
// matrix[i][j] will return each element placed at row ‘i',column 'j'
System.out.print( matrix[i][j] + "\t");
}
System.out.println();
}
}
public static void main(String[] args) {
int[][] matrix = { { 3, 2, 1, 7 },
{ 9, 11, 5, 4 },
{ 6, 0, 13, 17 },
{ 7, 21, 14, 15 } };
printMatrix(matrix);
}
}
வெளியீடு
3 2 1 7 9 11 5 4 6 0 13 17 7 21 14 15
"ஒவ்வொருவருக்கும்" சுழற்சியைப் பயன்படுத்துதல்
" foreach loop " ஐப் பயன்படுத்தி ஜாவாவில் 2D வரிசைகளை அச்சிடுவதற்கான மற்றொரு வழி இங்கே . இது ஜாவாவால் வழங்கப்பட்ட ஒரு சிறப்பு வகை வளையமாகும், இதில் int[]வரிசை அணியில் உள்ள ஒவ்வொரு வரிசையிலும் சுழலும். அதேசமயம், மாறி "உறுப்பு" வரிசையின் வழியாக நெடுவரிசை குறியீட்டில் வைக்கப்படும் ஒவ்வொரு உறுப்பையும் கொண்டிருக்கும்.
public class MatrixTraversal {
public static void printMatrix(int matrix[][]){
for (int [] row : matrix)
{
// traverses through number of rows
for (int element : row)
{
// 'element' has current element of row index
System.out.print( element + "\t");
}
System.out.println();
}
}
public static void main(String[] args) {
int[][] matrix = { { 3, 2, 1, 7 },
{ 9, 11, 5, 4 },
{ 6, 0, 13, 17 },
{ 7, 21, 14, 15 } };
printMatrix(matrix);
}
}
வெளியீடு
3 2 1 7 9 11 5 4 6 0 13 17 7 21 14 15
“Arays.toString()” முறையைப் பயன்படுத்துதல்
ஜாவாவில் உள்ள Arrays.toString() முறை, அதற்கு அனுப்பப்பட்ட ஒவ்வொரு அளவுருவையும் ஒற்றை அணியாக மாற்றுகிறது மற்றும் அதை அச்சிட அதன் உள்ளமைக்கப்பட்ட முறையைப் பயன்படுத்துகிறது. சுற்றி விளையாடுவதற்கு போலி சரம் 2D வரிசையை உருவாக்கியுள்ளோம். அதே முறை முழு எண் வரிசைகளுக்கும் வேலை செய்கிறது. உங்கள் உடற்பயிற்சிக்காக அதைப் பயிற்சி செய்ய நாங்கள் உங்களை ஊக்குவிக்கிறோம்.
import java.util.Arrays;
public class MatrixTraversal {
public static void printMatrix(String matrix[][]){
for (String[] row : matrix) {
// convert each row to a String before printing
System.out.println(Arrays.toString(row));
}
}
public static void main(String[] args) {
String [][] matrix = { { "Hi, I am Karen" },
{ "I'm new to Java"},
{ "I love swimming" },
{ "sometimes I play keyboard"} };
printMatrix(matrix);
}
}
வெளியீடு
[வணக்கம், நான் கரேன்] [நான் ஜாவாவுக்கு புதியவன்] [எனக்கு நீச்சல் பிடிக்கும்] [சில நேரங்களில் நான் கீபோர்டு வாசிப்பேன்]
GO TO FULL VERSION