4. ARREGLOS UNIDIMENSIONALES (VECTORES)
Un arreglo es una estructura de datos que nos
permite almacenar una lista de datos de un mismo
tipo.
Utiliza un índice que inicia en 0.
Declaración e inicialización
Variables:
var identificadorArreglo = new tipoDato[dimension];
Atributos:
tipoDato identificadorArreglo [ ];
identificadorArreglo = new tipoDato[dimension];
El tamaño del arreglo NO puede ser dinámico
mientras se ejecuta.
5. ARREGLOS BIDIMENSIONALES (MATRICES)
Un arreglo bidimensional es una estructura de
datos que nos permite almacenar una lista de
datos de un mismo tipo en forma de matriz.
Utiliza índice en filas y columnas que inician en 0.
Declaración e inicialización
Variables:
var identificadorMatriz = new tipoDato[filas][columnas];
Atributos:
tipoDato identificadorMatriz [ ][ ];
identificadorMatriz = new tipoDato[filas][columnas];
El tamaño de la matriz NO puede ser dinámico
mientras se ejecuta.
6. EJERCICIO EN CLASE
Se necesita una clase que permita el manejo de
arreglos (vectores y matrices)
Un método que permita crear un vector
dinámico a partir de una dimensión específica.
Un método que permita crear una matriz
dinámica a partir de las filas y columnas.
Para cargar los valores de los vectores y las
matrices se debe utilizar el método random() de
la clase Math.
Un método para sumar vectores y otro para
sumar matrices.
7. RELACIONES
Las relaciones de asociación se utilizan para
resolver diagramas en los cuales existen dos o
más clases relacionadas.
La asociación se representa como una línea
recta entre dos clases relacionadas.
8. MULTIPLICIDAD
Esta característica de la relación explica la
cardinalidad que existe entre las clases, es decir
cuántos objetos de una clase pueden participar en
la otra.
La multiplicidad representa cuántos objetos de esa
clase se pueden asociar con la otra clase de la
asociación.
Se puede representar varios tipos de multiplicidad.
0..1 Asociación opcional o máximo un objeto.
1. Exactamente un objeto.
0..* Asociación opcional o n objetos
1..* N objetos, pero al menos uno obligatorio
9. NAVEGABILIDAD
Esta característica es opcional pero muy
importante dentro de las relaciones, ya que
permite indicar la dirección en la cual pasará el
objeto de una clase a otra.
Cuando dos clases se encuentran relacionadas,
y lo que se desea es representar que en la
ClaseA se va a crear un objeto de la ClaseB,
entonces la navegabilidad se representa con
una flecha en la ClaseB.
En la relación se puede describir el nombre del
objeto que se creará a partir de una ClaseB en
la ClaseB.
10. EJERCICIO EN CLASE
Se necesita crear un sistema que permita
guardar la información de los contactos de una
agenda telefónica.
La agenda puede contener varias personas, de
las que se debe guardar la cédula, nombre y
fecha de nacimiento.
Se debe almacenar toda la información
referente a los números telefónicos que posee.
Un número telefónico no puede pertenecer a
varias personas.
11. BIBLIOGRAFÍA
TEXTOS BÁSICOS
1 D. J. Eck; Introduction to Programming Using Java; 7a. ed.; 2016. 2 L
2 Cay S. Horstmann; Core Java Volume I—Fundamentals; 10a. ed.; 2015
3 Deitel P.j; Java : how to program, 9a. ed.; 2012
4 M. Ortiz, A. Plaza; Fundamentos de Programación en JAVA y UML; UPS Cuenca; 2014
5 Seidl, M., Scholz, M., Huemer, C., & Kappel, G.; UML@ classroom; Springer; 2015
LECTURAS SUGERIDAS
1 Martin, R. C. ; Código limpio. Editorial ANAYA; 2012
2 Johnson, R., & Vlissides, J. ; Design patterns. Elements of Reusable Object-Oriented Software Addison-Wesley, Reading; 1994
3 C. Fontela, C.; UML – Modelado de Software para profesionales; 2a. ed; 2012
4 J. Rumbaugh, I. Jacobson, Booch G.; The Unified Modeling Language Reference Manual; 2a. ed.; 2004
12. MÉTODOS DE LA CLASE MATH
Método. Descripción.
abs(double a)
Devuelve el valor absoluto de un valor double introducido
como parámetro.
acos(double a)
Devuelve el arco coseno de un valor introducido como
parámetro.
addExact(int x, int
y)
Devuelve la suma de sus argumentos, lanzando una excepción
si el resultado desborda un int.
addExact(long x,
long y)
Devuelve la suma de sus argumentos, lanzando una excepción
si el resultado se desborda a long.
asin(double a) Devuelve el arco seno de un valor introducido.
atan(double a) Devuelve el arco tangente de un valor introducido.
cbrt(double a) Devuelve la raíz cúbica de un doublevalor.
cos(double a) Devuelve el coseno trigonométrico de un ángulo.
exp(double a)
Devuelve el número e de Euler elevado a la potencia de un
doublevalor.
log(double a) Devuelve el logaritmo natural (base e ) de un double valor.
log10(double a) Devuelve el logaritmo de base 10 de un doublevalor.
max(double a,
double b)
Devuelve el mayor de dos valores double
Método. Descripción.
max(double a, double b) Devuelve el mayor de dos valores double
max(int a, int b) Devuelve el mayor de dos valores Enteros.
max(long a, long b) Devuelve el mayor de dos valores long.
min(double a, double b) Devuelve el menor de dos valores double.
multiplyExact(int x, int y)
Devuelve el producto de los argumentos, lanzando
una excepción si el resultado desborda un int.
pow(double a, double b)
Devuelve el valor del primer argumento elevado a
la potencia del segundo argumento.
random()
Devuelve un double valor con un signo positivo,
mayor o igual que 0.0 y menor que 1.0.
round(double a)
Devuelve el long redondeado más cercano al
double introducido.
round(float a)
Devuelve el int mas cercano y redondeado al float
introducido.
sin(double a) Devuelve el seno trigonométrico de un ángulo.
sqrt(double a)
Devuelve la raíz cuadrada positiva correctamente
redondeada de un doublevalor.
tan(double a) Devuelve la tangente trigonométrica de un ángulo.
UNIDAD 01.- PROGRAMACIÓN ORIENTADA OBJETOS
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Math.html
13. PLANTILLAS DE CÓDIGO | NETBEANS
public static void main(String[] args) {}
psvm+TAB
System.out.println(“Hola mundo”)
sout+TAB
System.out.println("this = " + this);
soutv+TAB
if (true) {} else {}
ifelse+TAB
switch (var) {case val: break;default:throw new
AssertionError();}
sw+TAB
for (int i = 0; i < 10; i++) { }
for+TAB
while (true) { }
wh+TAB
try { } catch (Exception e) { }
trycatch+TAB