Tipos agregados
EJERCICIOS TIPOS DE AGREGADOS JAVA
Haz click aquí para descargar los ejercicios.
Array, List, String y Set
Tipos agregados: Array, List, String y Set
● Son conjuntos donde almacenar elementos.
● Los objetos de tipo array, List y String son indexados, es decir, se puede
acceder a los elementos que contienen a través de la posición que
ocupan. El tipo Set no es indexable.
● La primera posición es 0, y la última el tamaño menos 1. Ej: si tenemos
una lista cuyo tamaño es 15, su primer elemento estará en el índice 0 y el
último elemento en el índice 14.
Array
Un array Java es una estructura de datos que nos permite almacenar una
ristra de datos de un mismo tipo. El tamaño de los arrays se declara en un
primer momento y no puede cambiar en tiempo de ejecución como puede
producirse en otros lenguajes.
List
Las listas en Java también se utilizan para almacenar datos, son similares a los
Array sin embargo las nuevas tendencias en la programación van orientadas
más hacia el uso de Listas que arrays.
Para declarar una lista:
List ejemploLista = new ArrayList()
Para declarar una lista donde guardaremos datos tipo String :
List<String> ejemploLista = new ArrayList<String>();
String
Las cadena de caracteres se corresponden con la clase String.
Se declara:
String s="Texto de prueba";
La variables de tipo String pueden utilizarse también en una expresión que
haga uso del operador “+” para concatenar cadenas:
String s="Hola";
String t=s + " que tal"; //La variable t apunta al objeto "Hola que tal"
Set
Se utiliza para modificar el valor de un atributo, es un tipo agregado igual que
list pero no podemos tener elementos repetidos.
Inicialización de Array
Hay dos formas de hacerlo, indicando entre llaves y separados por comas
los valores iniciales del array o indicando solamente la longitud del array.
Todos los elementos de un array deben ser del mismo tipo.
int [ ] a = {1,43,2}; //es un array de tres valores de tipo int
Integer[ ] b = new Integer [7]; //es un array de 7 valores de tipo Integer
* La diferencia entre int e integer: int es un tipo primitivo (un número), no un objeto,
mientras que Integer es un objeto o una Clase. (un Integer es una caja, y un int es lo
que hay dentro de esa caja).
Tamaño
Es el número de elementos que contiene el agregado.
● Array: el tamaño es inmutable, es decir, no cambia una vez creado el
objeto. Se representa por el atributo lenght.
○ a.length
● String: el tamaño es inmutable. Se representa por el método lenght()
○ s.length()
● List<T> y Set<T>: el tamaño es mutable pero solamente puede cambiar a
través de algunas operaciones, no puede ser modificado directamente.
○ l.size()
○ c.size()
int i; Contenido de una celda
Solo está disponible para los agregados indexables.
Array: el contenido de una celda es consultable y modificable
Consulta: a[i]
Modificación: a[i]= e
String: el contenido de una celda es inmutable
Consulta: charAt(i)
List<T>: el contenido de una celda puede consultarse y modificarse
Consulta: get(i)
Modificación set(i, T e)// en la posición i pone el objeto e de tipo T (no hay que especificarlo)
Contenido de una celda. Limitaciones
Un array puede contener elementos de tipos objeto y de tipos primitivos
Los elementos de un objeto String sólo pueden ser caracteres
Los tipos Set o List pueden contener solamente elementos de tipo objeto
Añadir y eliminar elementos
En el caso de los agregados cuyo tamaño puede modificarse hay disponible
operaciones para añadir y eliminar elementos, esto por tanto no podrá
hacerse en arrays ni en objetos de tipo String.
En los tipos List y Set:
Para añadir elementos: add(e)
Para eliminar elementos: remove(e)
*En el caso de una lista el elemento añadido se coloca al final de la misma, y al
eliminar un elemento, si hubiera varios iguales, se eliminaría el primero que
se encuentre al recorrer la lista
Resumen
Ejemplo
List<Double> v1 = new ArrayList();
v1.add(3.0); v1.add(25.0);v1.add(7.0);v1.add(9.0);
v1.remove(1.0); v1.remove(7.0);
Set<Double> s1= new HashSet();
s1.add(3.0); s1.add(25.0); s1.add(7.0); s1.add(9.0);
s1.remove(1.0); s1.remove(7.0);
Ejercicio 1 con Array
Programa que guarde en un array 10 números enteros que se leen por
teclado y calcule cuántos números son positivos, cuántos negativos y
cuántos ceros.
Ejercicio 2 con Array
Diseña un programa que almacene las temperaturas medias de
un mes que introduzca un usuario. Cada mes tendrá 28 días y
está formado por 4 semanas de 7 días.
Mostrar un menú que nos permita:
1. Rellenar las temperaturas.
2. Mostrar las temperaturas.
3. Visualizar la temperatura media del mes.
4. Día o días más calurosos del mes. Ejemplo:
Los días más calurosos fueron:
El jueves de la Semana 3 con 40 grados.
El sábado de la Semana 4 con 40 grados.
EJERCICIOS TIPOS DE AGREGADOS JAVA
Haz click aquí para descargar los ejercicios.
Comentarios
Publicar un comentario