Qué son los arreglos

Anuncio
Programación Orientada a Objetos
Arreglos Java
Ing
Ing.. Julio Ernesto Carreño Vargas
MsC..
MsC
Qué son los arreglos
Estructuras de datos
Contiene elementos relacionados del mismo
tipo
Mantiene el mismo tamaño una vez que han
sido creados
Entradas de longitud fija
Programación Orientada a Objetos
2
1
Arreglo de 12 posiciones
Arreglo de enteros
llamado c
Indice del elemento
en
el arreglo.
Valor del arreglo en la
posición del indice
Programación Orientada a Objetos
3
Indice
Indica el número de la
posición dentro de un
arreglo
Debe ser un entero positivo
ó una expresión que
retorne un entero.
El primer elemento del
arreglo tiene indice 0
Programación Orientada a Objetos
Aumenta en 2 la
posición 11 del
arreglo
4
2
Declarando y Creando Arreglos
Arreglos son objetos que ocupan memoria
Se crean dinámicamente con la palabra
reservada new
Programación Orientada a Objetos
5
Inicializando arreglos
Los arreglos se pueden inicializar usando una
lista de valores separados de comas y encerrada
entre { y }
No se requiere la palabra reservada new
Programación Orientada a Objetos
6
3
Usando constantes
Para evitar usar valores literales dentro del código
se recomienda el uso de atributos de tipo final (su
valor no puede ser cambiado).
Programación Orientada a Objetos
7
Tamaño de un arreglo
Los arreglos tienen un atributo length que
devuelve la longitud del mismo
imprime
5
Programación Orientada a Objetos
8
4
Accediendo posiciones
individuales en un arreglo
Se puede acceder a una posición cualquiera del
arreglo usando la notación [ ].
40
39
50
java.lang.ArrayIndexOut
OfBoundsException: 10
Programación Orientada a Objetos
9
Recorriendo un arreglo
Para recorrer un arreglo se utiliza alguna
estructura de repetición, preferiblemente el for.
La variable contador del ciclo maneja el índice del
arreglo
Programación Orientada a Objetos
10
5
Sumando los valores del arreglo
Programación Orientada a Objetos
11
Ejemplo: Frecuencia de un número
Observe que el indice del arreglo frecuencia
se obtiene del valor que devuelve el arreglo
respuesta[i], si lo prefiere vea el equivalente:
Programación Orientada a Objetos
12
6
Sentencia for mejorada(1)
Permite iterar a través de los elementos de un
arreglo ó colección sin usar un contador.
Sintaxis
for ( parametro: nombreArreglo){
sentencia;
}
Por defecto el arreglo se recorre desde el comienzo
hasta el final, no se puede acceder con el índice a una
posición específica.
Programación Orientada a Objetos
13
Sentencia for mejorada(2)
En cada iteración cada elemento del arreglo
en la posición i, es cargado en la variable
entera “numero”.
Programación Orientada a Objetos
14
7
Paso de Parámetros
En java los parámetros pueden pasarse de dos
maneras:
Por valor
Se crea una copia de la variable, sin afectar el valor original
Todas las variables de tipo primitivo pasan por valor
Por referencia
Se tiene acceso directo a la memoria en memoria
En java todos los objetos pasan por referencia
Los arreglos son pasados como parámetros por
referencia
Programación Orientada a Objetos
15
Invocando una Función que recibe
un arreglo
Al invocar la
función
“SumeArreglo”,
se coloca el
nombre del
arreglo sin []
Programación Orientada a Objetos
16
8
Modificando un arreglo en una Función
A pesar de que el arreglo
cambia de nombre, se
trata del mismo arreglo
“numeros”, ya que los
arreglos pasan por
referencia
Programación Orientada a Objetos
17
Arreglos multidimensionales(1)
Los arreglos pueden tener cualquier cantidad de
dimensiones
bi dimensionales
tri dimensionales
Los arreglos bidimensionales se asemejan a
tablas de filas y columnas
Arreglos de m filas por n columnas
Cada fila del arreglo bidimensional es un arreglo
unidimensional.
Programación Orientada a Objetos
18
9
Arreglos multidimensionales(2)
Llamados también matrices
Programación Orientada a Objetos
19
Declaración e inicializando Matrices
Indices de columna
0 1
b
Indices
de fila
0
1
Programación Orientada a Objetos
1 2
El valor de b[1,1] es 4
3 4
20
10
Declaración e inicializando Matrices
con diferente longitud de fila
La primera fila tiene 2 columnas
y la segunda fila tiene 3 columnas
Programación Orientada a Objetos
21
Declaración e inicializando de
Matrices usando expresiones
Por defecto
los arreglos
se
inicializan
en 0
Programación Orientada a Objetos
22
11
Accediendo valores individuales de
una matriz
Observe el
uso del
doble []
Programación Orientada a Objetos
23
Función que recorre e imprime toda
la matriz
Programación Orientada a Objetos
24
12
Las Matrices pasan por referencia
Las matriz “c” pasa por
referencia al método
“ImprimirArray2”
Observe el uso del for
abreviado en las matrices
Programación Orientada a Objetos
25
Bibliografía
Paul Deitel.
Deitel. Como programar en Java 7/e. Pearson Education
Education..
2007.
Eckel,, Bruce, “Thinking
Eckel
“Thinking in Java, 2nd. Edition
Edition”,
”,
C. Thomas Wu.
Wu. An Introduction to Object Oriented
Programming with Java
Programación Orientada a Objetos
26
13
Descargar