JavaRush /Java блогу /Random-KY /Көп өлчөмдүү массивдер

Көп өлчөмдүү массивдер

Группада жарыяланган
Көп өлчөмдүү массивдер - 1

Бир өлчөмдүү Java массиви деген эмне?

Массив - бул бир эле типтеги, примитивдик же шилтемедеги элементтердин иреттелген жыйындысы. Массивдер (негизинен бир өлчөмдүү) жөнүндө жалпы маалыматты “ Javaдагы массивдер ” макаласынан жана JavaRush курсунан тапса болот . Бул макалада биз элементтери башка массивдер болгон массивдер жөнүндө сүйлөшөбүз. Мындай массивдер көп өлчөмдүү деп аталат. Элементтери башка массивдер, башкача айтканда массивдердин массиви болгон массив эки өлчөмдүү деп аталат. Бардык тилдерде ушундай структураланган көп өлчөмдүү массивдер жок, бирок Javaда ушундай.

Java көп өлчөмдүү массивдери, жалпы синтаксис

Жалпысынан, Javaдагы көп өлчөмдүү массивдер төмөнкүдөй көрүнөт:
Data_type[dimension1][dimension2][]..[dimensionN] array_name = new data_type[size1][size2].[sizeN];
Data_typeМассивдеги элементтердин түрү кайда . Примитивдик же шилтеме (класс) болушу мүмкүн. Ичтери бар кашаа жуптарынын саны dimensionмассивдин өлчөмү болуп саналат (биздин учурда - N). array_name— массивдин аты size1...sizN— массивдин ар бир өлчөмүндөгү элементтердин саны. Көп өлчөмдүү массивдерди жарыялоо:
int[][] twoDimArray; //two-dimensional array
String[][][] threeDimArray; //three-dimensional array
double[][][][][] fiveDimArray; // five-dimensional array
Балким, мунун баары абдан абстракттуу көрүнөт, андыктан азыр көп өлчөмдүү массивдердин конкреттүү көрүнүштөрүнө – эки өлчөмдүү жана үч өлчөмдүү көрүнүштөргө өтөбүз. Чындыгында Java иштеп чыгуучулары кээде эки өлчөмдүү массивдерди колдонушат, ал эми үч өлчөмдүү массивдер өтө сейрек кездешет. Аларга жолукпай калуу ыктымалдыгы жогору.

JavaRush курсундагы көп өлчөмдүү массивдер

JavaRushта "кадимки" массивдер Java синтаксисинин квестинин 7-деңгээлинде башталат жана кийинчерээк курста алар бир нече жолу кездешет. Кээде курстун жүрүшүндө сиз эки өлчөмдүү массивдерди (же алардын жардамы менен чечүүгө мүмкүн болгон) байланышкан көйгөйлөргө туш болосуз. Эки өлчөмдүү массивдер " JavaRush боюнча оюндар " атайын бөлүмүнүн оюн кыймылдаткычында да колдонулат . Эгер ал жакка бара элек болсоңуз, бир-эки оюнду карап көрүңүз. Шарттары жана шарттары деталдуу нускамалар менен келет жана программалоо көндүмдөрүн мыкты окутууну камсыз кылат. Үч өлчөмдүү массивди Space Invaders оюнунан тапса болот . Ал аркылуу анимация үчүн кадрлардын топтому көрсөтүлөт (жана бул кадрлардын ар бири эки өлчөмдүү массив болуп саналат). Эгер сиз буга чейин JavaSyntax тапшырмасын аткарган болсоңуз же Java программалоодо өзүңүздү ишенимдүү сезсеңиз, бул классикалык оюндун өз versionңызды жазып көрүңүз.

Эки өлчөмдүү Java массиви деген эмне?

Java тorндеги эки өлчөмдүү массив массивдердин массиви болуп саналат, башкача айтканда, ар бир клетка массивге шилтемени камтыйт. Бирок аны берилген саптардын саны (биринчи өлчөм) жана мамычалардын саны (экинчи өлчөм) бар table түрүндө берүү алда канча оңой. Бардык саптар бирдей сандагы элементтерден турган эки өлчөмдүү массив тик бурчтуу деп аталат.

Эки өлчөмдүү массивдерди жарыялоо, түзүү жана инициализациялоо

Эки өлчөмдүү массивди жарыялоо жана түзүү proceduresасы бир өлчөмдүү массивдегидей эле:
int[][] twoDimArray = new int[3][4];
Бул массивде 3 сап жана 4 тилке бар. Тик бурчтуу эки өлчөмдүү массивдин өлчөмү (алар тик бурчтуу болбошу мүмкүн, төмөндө дагы көп), башкача айтканда, элементтердин жалпы санын саптардын санын мамычалардын санына көбөйтүү жолу менен аныктоого болот. Ал азыр демейки маанилер менен инициализацияланган (толтурулган). Башкача айтканда, нөл. Аны өзүбүзгө керектүү баалуулуктар менен толтуралы.
twoDimArray[0][0] = 5;//write the value 5 into the cell at the intersection of the zero row and zero column
twoDimArray[0][1] = 7; //write the value 7 into the cell at the intersection of the zero row and the first column
twoDimArray[0][2]  = 3;
twoDimArray[0][3] = 17;
twoDimArray[1][0] = 7;
twoDimArray[1][1] = 0;
twoDimArray[1][2] = 1;
twoDimArray[1][3] = 12;
twoDimArray[2][0] = 8;
twoDimArray[2][1] = 1;
twoDimArray[2][2] = 2;
twoDimArray[2][3] = 3;
Бир өлчөмдүү массивдердей эле, инициализация proceduresасын тезирээк аткара аласыз:
int [][] twoDimArray = {{5,7,3,17}, {7,0,1,12}, {8,1,2,3}};
Эки учурда тең, биз бүтүн сандар менен толтурулган үч сап жана төрт мамычасы бар эки өлчөмдүү массивди алабыз. Көп өлчөмдүү массивдер - 2

Экранда эки өлчөмдүү массивди көрсөтүү

Бул операцияны жасоонун эң логикалык жолу – адегенде нөл сызык элементин элемент боюнча чыгаруу, андан кийин экинчисин ж.б.у.с. Java'да эки өлчөмдүү массивди чыгаруунун эң кеңири таралган жолу - эки уяланган циклди колдонуу.
int [][] twoDimArray = {{5,7,3,17}, {7,0,1,12}, {8,1,2,3}};//declared an array and filled it with elements
for (int i = 0; i < 3; i++) {  //go through the lines
            for (int j = 0; j < 4; j++) {//go through the columns
                System.out.print(" " + twoDimArray[i][j] + " "); //output element
            }
            System.out.println();// line wrap for the visual preservation of the tabular form
        }

Эки өлчөмдүү массивдин тез чыгышы

Экранда эки өлчөмдүү массивдин элементтеринин тизмесин көрсөтүүнүн эң кыска жолу deepToStringкласс ыкмасын колдонуу болуп саналат Arrays. Мисал:
int[][] myArray = {{18,28,18},{28,45,90},{45,3,14}};
System.out.printLn(Arrays.deepToString(myArray));
Программанын натыйжасы төмөнкүдөй жыйынтык: [[18, 28, 18], [28, 45, 90], [45, 3, 14]]

Эки өлчөмдүү массивдин "узундуктары"

Бир өлчөмдүү массивдин узундугун (башкача айтканда, андагы элементтердин санын) алуу үчүн, өзгөрмө колдонсоңуз болот length. Башкача айтканда, эгерде биз массивди аныктасак int a[] = {1,2,3}, анда операция a.length3 санын кайтарат. Бирок эки өлчөмдүү массивибизге ушул эле proceduresаны колдонсок эмне болот?
int [][] twoDimArray = {{5,7,3,17}, {7,0,1,12}, {8,1,2,3}};
System.out.println(twoDimArray.length);
Чыгуу: 3 Ошентип, бул операция массивдеги катарлардын санын чыгарат. тилкелердин санын кантип алууга болот? Эгерде биз тик бурчтуу эки өлчөмдүү массивдер менен (б.а. бардык сызыктар бирдей узундукта болгондор) иш алып барсак, анда биз операцияны twoDimArray[0].lengthже нөл элементтин ордуна (негизинен нөл сызыгы) - башка бар болгонду колдонсок болот. Биз муну жасай алабыз, анткени Java-да эки өлчөмдүү массив массивдердин массиви, ал эми нөл элементи twoDimArray[0]4 узундуктагы массив. Муну өзүңүз текшерсеңиз болот.

Эки өлчөмдүү массивди колдонуунун мисалы: шахмат тактасы

Эки өлчөмдүү массивдер ар кандай чектүү эки өлчөмдүү талааны түзүү үчүн колдонулушу мүмкүн, мисалы оюндарда, атап айтканда, шахматта. Шахмат тактасын эки өлчөмдүү массив деп элестетүү оңой. Сиз буга графиканы "тиркесеңиз" болот, бирок азыр шахмат тактасын символдор менен аныктап, аны консолго чыгаралы. Көп өлчөмдүү массивдер - 3Шахмат тактасынын ылдыйкы сол чарчы кара түскө боёлгон, кийинкиси анын үстүндөгүдөй ак. Ошентип, түс сиз капталга чектеш уячага өткөн сайын өзгөрөт. Шахматтын түсүн кол менен эмес, алгоритмди колдонуу менен коюу үчүн, паритетти текшерүүнү колдонсоңуз болот: сап менен мамычанын индексинин суммасы жуп же нөл болсо, анда уяча ак, антпесе кара болот. Бул текшерүү үчүн алгоритмде % калган операторду колдонобуз. WБиз графика менен эмес, символдор менен иштегендиктен, ак уячаны тамга (ак), кара уячаны тамга B(кара) менен белгилейбиз .
//set the chessboard as a two-dimensional array
String [][] chessBoard = new String[8][8];
        for (int i = 0; i< chessBoard.length; i++) {
            for (int j = 0; j < chessBoard[0].length; j++) {
                if ((i + j) % 2 == 0) chessBoard[i][j] = "W";
                else chessBoard[i][j] = "B";
            }
        }
Программанын чыгарылышы төмөнкүдөй: WBWBWBWBBWBWBWBWWBWBW BWBBWBWBWBWWBWBWBWBBW BWBWBWBWBWBWBBWBWBWB W Баары чыныгы шахмат тактасындагыдай, аны текшере аласыз. Көп өлчөмдүү массивдер - 4Эми уячаларды туура номерлөө ыкмасын массив тorнде эмес, “шахмат” тorнде жазалы. Тактадагы төмөнкү сол уяча A1 деп аталат, ал эми биздин массивде ал chessBoard[7][0]. Эки өлчөмдүү массивдин ар бир жуп индексин алардын “шахмат” эквиваленти менен байланыштыралы. Бул үчүн, биз эки сапты колдонобуз - " abcdefgh" жана " 87654321" (тескери тартипте - жөнөкөйлүк үчүн, такта 8 нөл тилкеге ​​туура келет).
public static String chessBoardCoord(int a, int b) {
            String letters = "abcdefgh";
            String numbers = "87654321";
            if ((a > 7)|| (b>7)) return null; //if the number is outside the board, return the default value - null
            else return (Character.toString(letters.charAt(a)) + numbers.charAt(b)); /*charAt - a method with which we extract from the string the element under the passed number, here - under the numbers a and b. Character.toString - a method that converts the received character into a string */
        }
Эми ыкманы колдонуу менен ар бир уячада анын түсүн гана эмес, санын да көрсөтөлүchessBoardCoord
String [][] chessBoard = new String[8][8];
        for (int i = 0; i < chessBoard.length; i++) {
            for (int j = 0; j < chessBoard[0].length; j++) {
                if ((i + j) % 2 == 0) chessBoard[i][j] = "W" + chessBoardCoord(j,i);
                else chessBoard[i][j] = "B"+ chessBoardCoord(j,i);
            }
        }

            for (int i = 0; i < chessBoard.length; i++) {
                for (int j = 0; j < chessBoard[0].length; j++) {
                    System.out.print(" " + chessBoard[i][j] + " ");
                }
                System.out.println();
            }
Программанын чыгышы: Wa8 Bb8 Wc8 Bd8 We8 Bf8 Wg8 Bh8 Ba7 Wb7 Bc7 Wd7 Be7 Wf7 Bg7 Wh7 Wa6 Bb6 Wc6 Bd6 We6 Bf6 Wg6 Bh6 Ba5 Wb5 Bc5 Wd5 Be5 Wf5 Bg5 Wh5 Wa4 Bb4 Wc Bg5 Wh5 Wa4 Bb4 Wc B3 B4 Wc 3 Be3 Wf3 Bg3 Wh3 Wa2 Bb2 Wc2 Bd2 We2 Bf2 Wg2 Bh2 Ba1 Wb1 Bc1 Wd1 Be1 Wf1 Bg1 Wh1 Бул жерде We2e2 номери коюлган ак чарчы билдирет.

Эки өлчөмдүү массивди колдонууга мисал: матрицаны көбөйтүү

Көңүл бургула!Бул мисал матрицалар боюнча негизги бorмди талап кылат. Бул жерде алар жөнүндө өтө аз сөз болот жана бул маалымат матрицалык арифметиканы окуган, бирок бир аз унутуп калгандар үчүн арналган. Бирок, бул бorмди ачык булактардан, атап айтканда Wikipediaдагы макаладан алууга болот . Бул эки өлчөмдүү массивдерди колдонуунун жакшы мисалы, бирок биз ансыз деле уланта алабыз. Демек, азыр математикалык көз караштан алганда сизге түшүнүксүз болуп көрүнсө жана сиз аны терең изилдегиңиз келбесе, мисалды өткөрүп жиберүүдөн тартынбаңыз. Эгер сиз негизги сызыктуу алгебраны изилдеген болсоңуз, анда тик бурчтуу матрицалар катары тик бурчтуу массивдерди үйрөнгөн болушуңуз мүмкүн. Көп өлчөмдүү массивдер - 5Бул жерде a11, a12... aNN кээ бир сандар. Сүрөттө матрица тик бурчтуу эмес, квадрат (катарлардын саны мамычалардын санына барабар, бирок бул дайыма эле боло бербейт). Реалдуу жашоодо мындай матрицалар сейрек кездешет, бирок программалоодо жана информатикада алар абдан көп кездешет. Атап айтканда, алар компьютердик графикада жана оюн кыймылдаткычтарында колдонулат. Мисалы, экрандагы нерсенин каалаган бурчка айлануусун айлануу матрицасы аркылуу программалоого болот. Эки өлчөмдүү мейкиндикте айлануу матрицасы төмөнкүдөй көрүнөт: Көп өлчөмдүү массивдер - 6Бул жерде тета - an objectти айлантуу керек болгон бурч. Бирдей өлчөмдөгү матрицаларды бири-бирине кошууга болот, ал эми кошуу элемент-элемент боюнча ишке ашат (биз бирдей индекстер менен элементтерди кошобуз). Бирок матрицаны көбөйтүү операциясы анча тааныш эмес. Ошентип, биринчи матрицанын мамычаларынын саны экинчинин саптарынын санына дал келген учурда гана матрицаларды көбөйтүүгө болот жана натыйжада матрицаны алууга болот. Натыйжа матрицасы биринчисиндей саптардын санына жана экинчисиндей тилкелердин санына ээ болот. Көбөйтүү төмөнкүдөй жүргүзүлөт. Бизге матрицасы a[l][m]жана b[m][n]. Аларды көбөйтүүнүн натыйжасында биз матрицаны алышыбыз керек c[l][n]. Продукция матрицанын элементин алуу үчүн биринчи матрицанын нөлдүк катарынын нөл элементин экинчи матрицанын нөл элементине көбөйтүү c[0][0]керек a[0][0], андан кийин биринчи матрицанын биринчи катарынын биринчи элементин биринчи элементке көбөйтүү керек. экинчи матрицанын биринчи тилкесинин жана башкалар, андан кийин бардык алынган продуктылар кошулат.

a[0][0]*b[0][0] + a[0][1]*b[1][0] + … + a[0][m-1]*b[m-1][0]
Натыйжа матрицасынын биринчи катарынын экинчи элементин алуу үчүн биз экинчи катар менен эле proceduresаны аткарабыз

a[1][0]*b[0][0] + a[1][1]*b[0][1] + … + a[0][m-1]*b[m-1][0]
Жана дагы саптын аягына чейин. Андан кийин кийинки сапка өтүп, сызыктар түгөнгөнчө proceduresаны кайталайбыз. Башкача айтканда, биринчи матрицанын саптарын экинчи матрицанын мамычалары менен көбөйтөбүз. Төмөндө матрицаны көбөйтүү үчүн code берилген. Сиз аны саптардын жана мамычалардын саны боюнча жогоруда айтылган шартка ылайыктуулугун текшерүү менен толуктасаңыз болот.
//declaring two matrices
int [][] twoDimArray1 = {{1,0,0,0},{0,1,0,0},{0,0,0,0}};
int[][] twoDimArray2 = {{1,2,3},{1,1,1},{0,0,0},{2,1,0}};

//matrix multiplication process
int[][]twoDimArray3 = new int [twoDimArray1.length][twoDimArray2[0].length];
        for (int i=0; i<twoDimArray3[0].length; i++)
            for (int j=0; j<twoDimArray3.length; j++)
                for (int k=0; k<twoDimArray1[0].length; k++)
                              twoDimArray3[i][j] = twoDimArray3[i][j] + twoDimArray1[i][k] * twoDimArray2[k][j];

//output on display
        for (int i = 0; i < twoDimArray3.length; i++) {
            for (int j = 0; j < twoDimArray3[0].length; j++) {
                System.out.print(" " + twoDimArray3[i][j] + " ");
            }
            System.out.println();
        }
Программа төмөнкү натыйжаны чыгарат: 1 2 3 1 1 1 0 0 0

Төрт бурчтуу эмес эки өлчөмдүү массивдер

Javaдагы эки өлчөмдүү массивдер массивдердин массивдери болгондуктан, ички массивдердин ар бири ар кандай узундукта болушу мүмкүн. Массивди түзүүдө биз тилкелердин санын эмес, саптардын санын гана көрсөтө алабыз (башкача айтканда, ошол эле саптардын узундугу). Келгиле, бир мисал карап көрөлү.
//declaring and creating an array, specifying only the number of rows
int [][] twoDimArray = new int[5][];

//initialize the array, filling it with arrays of different lengths
        twoDimArray[0] = new int[]{1, 2, 3, 4, 5};
        twoDimArray[1] = new int[]{1,2,3,4};
        twoDimArray[2] = new int[]{1,2,3};
        twoDimArray[3] = new int[]{1,2};
        twoDimArray[4] = new int[]{1};
//display the resulting non-rectangular two-dimensional array on the screen
        for (int i = 0; i < twoDimArray.length; i++) {
            for (int j = 0; j < twoDimArray[i].length; j++) {
                System.out.print(" " + twoDimArray[i][j] + " ");
            }
            System.out.println();
        }
Программанын чыгышы: 1 2 3 4 5 1 2 3 4 1 2 3 1 2 1 Ошентип, массивибиздин нөлүнчү сабында массив {1,2,3,4,5}, төртүнчү сапта массив бар {1}.

Javaдагы үч өлчөмдүү массивдер

Жалпы түшүнүккө жана Java тorнин логикасына ылайык, үч өлчөмдүү массивди “массивдердин массивдери” же “ар бир элементи эки өлчөмдүү массив болгон массив” деп атоого болот. Мындан тышкары, бул эки өлчөмдүү массивдер ар кандай болушу мүмкүн. Мисал:
// create a three-dimensional array consisting of two two-dimensional arrays
int[][][] threeDimArr = new int[2][][];
//create the first 2D array of a 5x2 3D array
        threeDimArr[0] = new int[5][2];
//create a second 2D array of a 1x1 3D array
        threeDimArr[1] = new int[1][1];
Бирок көп учурда практикада үч өлчөмдүү массивдер бар, аларда үч чоңдук бир эле учурда аныкталган, тик бурчтуу эки өлчөмдүү массивдердин аналогу. Көп өлчөмдүү массивдер - 7Жогоруда айтылгандай, үч өлчөмдүү же андан көп массивдер өтө сейрек колдонулат. Бирок, сиз 3D массиви менен кызыктуу нерсени программалай аласыз. Мисалы, көп кабаттуу унаа токтотуучу жай. Ар бир кабатты эки өлчөмдүү массив, ал эми унаа токтотуучу жайды үч өлчөмдүү массивдин белгилүү бир элементи катары кароого болот. Мындай массивдин элементи мейкиндик бош болсо false , ал эми мейкиндик ээлеген болсо trueboolean мааниси бар тип менен көрсөтүлүшү мүмкүн.
//set a boolean three-dimensional array. This car park has 3 floors, each of which can accommodate 2x5 = 10 cars. By default, all cells are empty (false)
boolean[][][] parkingLot = new boolean[3][2][5];
//two cars arrived and parked on the ground floor in cell [1][0] and [1][3]
        parkingLot[0][1][0] = true;
        parkingLot[0][1][3] = true;

//Output the array to the console
        for (int i = 0; i < 3; i++) {
            for (int j = 0; j < 2; j++) {
                for (int k = 0; k < 5; k++) {
                    System.out.print("arr[" + i + "][" + j + "][" + k + "] = " + parkingLot[i][j][k] + "\t");

                }
                System.out.println();
            }
        }

Java программистинин реалдуу ишиндеги көп өлчөмдүү массивдер

Чындыгында, көпчүлүк Java иштеп чыгуучулар көп өлчөмдүү массивдерди көп жолуктура беришпейт. Бирок, бул маалымат структурасы абдан ылайыктуу болгон бир катар милдеттер бар.

  1. Белгилүү бир алгоритмди текшерүү үчүн тесттер жана матрицаларды туруктуулар катары коюу үчүн.
  2. Кээде нейрон тармактары үчүн көп өлчөмдүү массивдер колдонулат.
  3. Архивчилер үчүн көп өлчөмдүү массивдер ылайыктуу.
  4. Сүрөттөр менен иштөө.

Эки өлчөмдүү жана үч өлчөмдүү массивдер боюнча кызыктуу маселелер

Сиз Javaдагы көп өлчөмдүү массивдер жөнүндө жетиштүү билесиз жана өзүңүздү ишенимдүү сезсеңиз, төмөндөгү айрым маселелерди чечүүгө аракет кылсаңыз болот. Алар оңой эмес, бирок кызыктуу. Tic-tac-toe. 3x3 талаасын орнотуңуз, кезектешкен эки оюнчу түзүңүз. Башында, талаа бош, ар бир бош талаада биринчи оюнчу кайчылаш, ал эми экинчиси нөл коё алат. Бир катарда, бир мамычада же диагональ боюнча тизилген үч крестти же үч нөлдү биринчи чогулткан адам жеңүүчү болот.

Дагы эмне окуш керек

Жаңы баштагандар үчүн Java оюну

Langton's Ant . Белгилүү бир талаа бар, уячаларга бөлүнгөн (эки өлчөмдүү массив), кара же ак түскө боёлгон (кокус функция менен коюлушу мүмкүн). «Кумурска» клеткалардын биринде туш келди пайда болуп, ар бир кадамда төрт багыттын бирине туурасынан же вертикалдуу түрдө жанаша турган клеткага жылып кете алат. Кумурсканын кыймылынын эрежелери:
  • Кара квадратта кумурска 90° солго бурулуп, клеткасынын түсүн ак түскө өзгөртүп, андан соң кийинки квадратка кадам ташташы керек.
  • Ак квадратта кумурска 90° оңго бурулуп, клеткасынын түсүн кара түскө өзгөртөт, андан соң кийинки квадратты көздөй кадам таштайт.
nКумурсканын баштапкы абалын эске алып, кадам санындагы кайталоону эсептеген ыкманы жазыңыз . Талааны туш келди нөлдөр жана бирдиктер менен толтурса болот (же шахмат тактасындагы мисалда болгондой Wжана тамгалары менен белгиленет). BБизге дагы эки параметр керек - кумурсканын горизонталдык жана вертикалдык абалы, ошондой эле анын бул кадамдагы багыты (түндүк, түштүк, батыш, чыгыш), ал эми демейки боюнча кумурска түндүктү карайт. Сиз үч өлчөмдүү массивдерди колдонуп, Рубиктин кубун моделдөө үчүн аракет кылсаңыз болот. Стандарттык Рубик кубунун 6 бети бар жана алардын ар бири түстүү квадраттардан турган үч өлчөмдүү массив Color[][][] rubik = new Color[6][3][3]. Бирок, кубик Рубикти ишке ашыруу анча деле маанилүү иш эмес.

Массивдер жөнүндө пайдалуу материалдар

JavaRush боюнча көптөгөн макалалар массивдерге арналган (негизинен бир өлчөмдүү, анткени алар практикада көбүрөөк колдонулат). Аларга көңүл буруңуз.
  1. Java тorндеги массивдер - башталгычтар үчүн мисалдар менен массивдер жөнүндө
  2. Массивдер жөнүндө бир нерсе - Массивдер боюнча жакшы деталдаштырылган макала
  3. Arrays классы жана аны колдонуу - макалада класстын кээ бир ыкмалары сүрөттөлөтArray
  4. Массивдер массивдерге арналган биринчи JavaRush лекциясы.
  5. Нөл эмес, нөл узундуктагы массивди кайтарыңыз - Натыйжалуу программалоонун автору Жошуа Блох бош массивдерди кантип жакшыраак кайтаруу керектиги жөнүндө айтат
Комментарийлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION