1
00:00:10,750 --> 00:00:12,580
Distanciamiento de matrices.

2
00:00:12,760 --> 00:00:18,670
Partiendo de las variables definidas en la lámina anterior en esta lámina veremos la sintaxis para instancias

3
00:00:18,730 --> 00:00:23,320
una matriz según el tipo de dato que estemos utilizando.

4
00:00:23,320 --> 00:00:30,190
La sintaxis es muy similar a distanciar una variable de tipo obvie y de hecho esta es una de las características

5
00:00:30,190 --> 00:00:31,700
más importantes de IAVA.

6
00:00:31,900 --> 00:00:39,400
Incluso las matrices o cualquier tipo en Java que almacena una referencia hereda de la clase obvie ya

7
00:00:39,400 --> 00:00:41,660
sea de manera directa o indirecta.

8
00:00:41,860 --> 00:00:46,150
Por lo tanto las matrices también descienden de la clase obvie.

9
00:00:46,150 --> 00:00:52,180
Sin embargo la diferencia con instancias un objeto normal a una matriz es que un arreglo indicamos el

10
00:00:52,180 --> 00:00:59,080
número de elementos máximo que contendrá dicha matriz es que en una matriz indicamos el número de elementos

11
00:00:59,080 --> 00:01:01,500
máximo que contendrá dicha matriz.

12
00:01:01,690 --> 00:01:07,690
Tanto el número de renglones como el número de columnas pero obviamente en la definición de la variable

13
00:01:07,900 --> 00:01:13,990
ya se indicó que tipo es el que se va a almacenar y ahora deberemos indicar que creamos un objeto de

14
00:01:13,990 --> 00:01:19,330
cierto tipo y que contendrá un número de renglones y columnas según se indique.

15
00:01:19,600 --> 00:01:26,710
Así que vamos a revisar varios ejemplos de inicialización de matrices según el tipo de dato que elijamos.

16
00:01:26,920 --> 00:01:32,560
Así que para instancias una matriz debemos ya tener definida una variable de tipo matriz como lo vimos

17
00:01:32,560 --> 00:01:36,810
en la lámina anterior y posteriormente utilizamos el tipo niu.

18
00:01:36,820 --> 00:01:42,550
En este momento es que se está reservando espacio de memoria y también aquí es donde la clase Object

19
00:01:42,850 --> 00:01:49,790
es la clase padre de todos los tipos matriz en Java debido a que estamos utilizando el operador Nio.

20
00:01:50,440 --> 00:01:56,980
Posteriormente indicamos el tipo de dato que va a almacenar esta matriz y finalmente el número de renglones

21
00:01:57,040 --> 00:02:00,520
y columnas que va a contener esta matriz.

22
00:02:00,520 --> 00:02:04,150
Vamos a ver algunos ejemplos para instancias matrices de tipo primitivo.

23
00:02:04,150 --> 00:02:11,500
Por ejemplo podemos tener la variable enteros y para inicializar la utilizamos el operador nio posteriormente

24
00:02:11,560 --> 00:02:18,460
el tipo que va a almacenar enteros y finalmente que va a tener dos renglones y dos columnas así que

25
00:02:18,460 --> 00:02:26,890
va a ser una matriz de dos por dos también podemos tener la variable banderas y para instancias lo vamos

26
00:02:26,890 --> 00:02:28,780
a utilizar el operador Nio.

27
00:02:28,780 --> 00:02:35,560
Posteriormente indicamos el tipo bullían y esta matriz va a ser de tres por dos es decir tres renglones

28
00:02:35,650 --> 00:02:40,150
por dos columnas y finalmente tenemos la matriz de tipo object.

29
00:02:40,150 --> 00:02:46,390
En este caso para instancias de la variable personas que es una matriz vamos a utilizar el operador

30
00:02:46,390 --> 00:02:53,020
nio indicamos el tipo y en este caso indicamos que va a ser de cuatro por dos cuatro renglones por dos

31
00:02:53,020 --> 00:02:57,590
columnas y la variable de nombres la cual es una matriz de tipo String.

32
00:02:57,640 --> 00:03:03,280
Vamos a indicar lo siguiente utilizamos el operador nio para reservar espacio de memoria y posteriormente

33
00:03:03,310 --> 00:03:11,050
indicamos el tipo en este caso el string y esta matriz va a tener cinco renglones por tres columnas.

34
00:03:11,050 --> 00:03:18,170
A continuación vamos a ver cómo inicializar los elementos de una matriz inicializar los elementos de

35
00:03:18,170 --> 00:03:23,470
una matriz en la lámina anterior observamos la inicialización de los elementos de una matriz.

36
00:03:23,780 --> 00:03:29,210
Sin embargo lo que debemos hacer para ir agregando elementos a una matriz es seleccionar un renglón

37
00:03:29,300 --> 00:03:33,540
y una columna con los índices respectivos que queremos ir inicializar.

38
00:03:35,090 --> 00:03:39,350
Así que la sintaxis para inicializar los elementos de una matriz es como sigue.

39
00:03:39,350 --> 00:03:43,760
En primer lugar vamos a utilizar el nombre de la variable en este caso el nombre matriz.

40
00:03:44,390 --> 00:03:50,610
Posteriormente indicamos el índice del renglón y posteriormente el índice de la columna que queremos.

41
00:03:50,660 --> 00:03:58,520
En este caso modificar y finalmente asignamos un valor a este índice y a este renglón así que en la

42
00:03:58,520 --> 00:04:04,910
matriz se va a modificar el elemento seleccionado por estos índices tanto el renglón como la columna

43
00:04:05,370 --> 00:04:10,670
y vamos a ver algunos ejemplos para inicializar los elementos de una matriz por ejemplo de tipo entero

44
00:04:11,150 --> 00:04:17,000
lo que debemos hacer es utilizar el nombre de la variable de la matriz y posteriormente indicar el índice

45
00:04:17,000 --> 00:04:23,360
del renglón y también el inicio de la columna y una vez seleccionado ese elemento posicionándonos en

46
00:04:23,360 --> 00:04:31,400
esa celda de la matriz asignamos el valor de 15 al renglón cero columna cero y posteriormente si quisiéramos

47
00:04:31,400 --> 00:04:37,940
modificar el valor de la celda ubicada en el renglón 1 columna cero podríamos hacerlo de esta manera.

48
00:04:37,940 --> 00:04:46,810
Y finalmente asignamos el valor de 13 en el renglón 1 columna 0 ahora vamos a ver ejemplos para inicializar

49
00:04:47,050 --> 00:04:49,690
los elementos de una matriz de tipo obvie.

50
00:04:49,720 --> 00:04:55,990
La sintaxis es muy similar simplemente especificamos el nombre de la matriz el renglón y la columna

51
00:04:56,230 --> 00:05:03,520
de la celda que queremos modificar y le asignamos el elemento en este caso un objeto nuevo utilizando

52
00:05:03,520 --> 00:05:11,460
el constructor vacío en este caso el constructor de la clase persona también para el elemento renglón

53
00:05:11,520 --> 00:05:13,970
1 Columna 1.

54
00:05:13,980 --> 00:05:21,270
Podemos utilizar este constructor ahora para inicializar un objeto de tipo personal y asignarlo en esta

55
00:05:21,270 --> 00:05:21,890
celda.

56
00:05:21,960 --> 00:05:29,220
Una vez que hemos seleccionado y proporcionado el elemento de renglón columna por ejemplo para el arreglo

57
00:05:29,220 --> 00:05:36,760
de nombres en el renglón cero columna cero en esta celda asignamos el valor de la cadena en este caso

58
00:05:36,760 --> 00:05:38,080
a la cadena de Juan.

59
00:05:38,400 --> 00:05:44,740
Recuerden que podemos utilizar simplemente la pura cadena sin necesidad de distanciar el objeto string

60
00:05:45,000 --> 00:05:51,000
ya que las cadenas podemos utilizar la notación simplificada y finalmente si queremos modificar el renglón

61
00:05:51,000 --> 00:05:58,880
0 Columna 1 podemos asignar el valor como se indica así que en el caso de matrices es importante saber

62
00:05:59,000 --> 00:06:05,150
que a diferencia de un arreglo en una matriz utilizaremos dos índices para determinar la posición de

63
00:06:05,150 --> 00:06:11,700
un elemento y los primeros índices tanto de renglón como de la columna inician en cero.

64
00:06:11,720 --> 00:06:17,450
También es importante saber que cuando indicamos una posición primero se indica el renglón y después

65
00:06:17,450 --> 00:06:24,710
la columna siempre en ese orden al igual que en el arreglo sólo podemos agregar elementos hasta el máximo

66
00:06:24,710 --> 00:06:31,380
de elementos menos 1 por ejemplo si son renglones sería el nombre de la matriz punto Lek menos 1.

67
00:06:31,460 --> 00:06:38,120
Este sería el valor máximo y se fuera para el máximo de columnas sería el nombre de la matriz seleccionando

68
00:06:38,180 --> 00:06:43,110
algún renglón y posteriormente solicitando el largo a este renglón.

69
00:06:43,130 --> 00:06:49,340
Esto nos va a regresar el largo de las columnas y debemos restarle 1 para que podamos obtener el máximo

70
00:06:49,340 --> 00:06:51,610
de columnas de una matriz.

71
00:06:51,770 --> 00:06:57,890
Si nos pasamos del índice máximo tanto en renglones o columnas y queremos agregar un elemento fuera

72
00:06:57,890 --> 00:07:01,680
de la cantidad máxima de elementos nos arrojará un error.

73
00:07:01,760 --> 00:07:08,300
Por ello debemos saber cuál es el máximo número de elementos tanto en renglones como en columnas así

74
00:07:08,300 --> 00:07:14,420
que observamos en la lámina varios ejemplos de cómo agregar elementos de nuestra matriz podemos agregar

75
00:07:14,420 --> 00:07:20,690
los de manera manual es decir uno a uno cada elemento o podemos ir agregando los elementos de manera

76
00:07:20,690 --> 00:07:26,690
más dinámica utilizando dos contadores uno para el manejo de renglones y otro para el manejo de columnas

77
00:07:27,200 --> 00:07:33,110
de tal forma que podamos saber si ya hemos llegado al límite de elementos agregados o no tanto en renglones

78
00:07:33,140 --> 00:07:34,670
como en columnas.

79
00:07:34,670 --> 00:07:39,380
En esta lámina podemos observar más claramente que no siempre estarán llenos todos los elementos de

80
00:07:39,380 --> 00:07:40,390
una matriz.

81
00:07:40,460 --> 00:07:46,490
Por ejemplo si la matriz de enteros es de dos renglones por dos columnas entonces sólo hemos llenado

82
00:07:46,670 --> 00:07:49,110
dos de los cuatro elementos disponibles.

83
00:07:49,130 --> 00:07:52,750
Esto quiere decir que dos elementos tendrán el valor por default.

84
00:07:53,030 --> 00:07:56,420
En este caso el valor de cero por ser de tipo entero.

85
00:07:56,420 --> 00:08:02,330
Por ello en muchas ocasiones será conveniente tener contadores para poder conocer cuántos elementos

86
00:08:02,450 --> 00:08:08,930
se han modificado en nuestra matriz lo cual es distinto al número de elementos máximo que soporta nuestra

87
00:08:08,930 --> 00:08:09,660
matriz.

88
00:08:09,860 --> 00:08:15,770
Tanto en los renglones como en las columnas disponibles de nuestra matriz en el ejercicio de esta elección

89
00:08:15,980 --> 00:08:18,920
veremos como inicializar los elementos de nuestras matrices.
