Algoritmia y Programación
API
API
Interfaz de programación de aplicación:
Provee una
colección de clases que le permite al programador construir
todo tipo de programas de acuerdo a sus necesidades, sin
tener que iniciar de cero.
Existen varias API´s de acuerdo a las operaciones que se
deseen realizar, normalmente las más utilizadas (y a usar
en este curso) son las de Standar Edition (SE), su
documentación se puede encontrar en:
http://download.oracle.com /javase/7/docs/api/
C
LASES DEL
API
Clase String
C
LASE
S
TRING
Entre los tipos de datos
primitivos que opera el lenguaje de programación java se encuentra los tipo carácter (char).
En el mundo real existen datos
conformado por un conjunto de caracteres, a este tipo de datos Java los considera una cadena de caracteres y los opera mediante la clase String.
La clase String permite a través
C
LASE
S
TRING
Los datos de tipo String puede contener una combinación
de letras, números y símbolos especiales.
Ejemplos:
Nombre de estudiante
Dirección Residencia
Nombre de Plan
Ciudad
C
LASE
S
TRING
Para declarar un dato de tipo String se hace así:
String nombre;
Se puede definir varias variables en una sola sentencia:
String mail, direccionResidencia, ciudad, telefono;
Una vez definida la variable, se puede asignar un valor:
nombre = “Luis”;
mail = “ [email protected]”
ciudad = “Cali”;
C
LASE
S
TRING
Ejemplo 1:
Capturar los datos Código, Nombres, Apellidos, E-mail, Ciudad y Teléfono de un estudiante e imprimirlos (Estudiante.java)
C
LASE
S
TRING
Al momento de declarar la variable, también se le puede
asignar un valor:
String nombre=“Luis”, Ciudad = “Cali”;
C
LASE
S
TRING
Para ciertas operaciones que se necesitan en los datos de
cadena de caracteres, la clase String ofrece un conjunto de
métodos, éstos se pueden consultar en la documentación
del lenguaje
http://download.oracle.com/javase/7/docs/api/
:
Para términos prácticos se abordará los métodos más utilizados:
charAt, toLowerCase, toUpperCase, trim, valueOf, indexOf, lastIndexOf contains, equals, equalsIgnoreCase, Length. substring
C
LASE
S
TRING
charAt(indice)
Devuelve el carácter de la posición que se especifique. En un String cada carácter tiene una posición, iniciando desde la posición 0.
Ejemplo.
String palabra = “Hola mundo”;
C
LASE
S
TRING
toLowerCase()
Convierte a minúsculas los caracteres de una cadena.
Ejemplo.
String palabra = “Hola Mundo”;
C
LASE
S
TRING
toUpperCase()
Convierte a mayúsculas los caracteres de una cadena.
Ejemplo.
String palabra = “Hola Mundo”;
C
LASE
S
TRING
trim()
Elimina los espacios a los extremos de la cadena.
Ejemplo.
String palabra = “ Hola Mundo ”;
C
LASE
S
TRING
valueOf()
Convierte el dato establecido en String.
Ejemplo.
int num1 = 10; float num2 = 12.5f
String. valueOf(num1) retornará la cadena “10”.
C
LASE
S
TRING
indexOf()
Retorna la posición de la primera ocurrencia de búsqueda encontrada de izquierda a derecha en la cadena.
Ejemplo.
String cadena = "Cali sucursal del cielo"; cadena. indexOf(“el”) ;
Retornará el valor 15, correspondiente a la posición de la letra “e” de la palabra “del” en la cadena.
C
LASE
S
TRING
lastIndexOf()
Retorna la posición de la primera ocurrencia de búsqueda encontrada de derecha a izquierda en la cadena.
Ejemplo.
String cadena = "Cali sucursal del cielo"; cadena. lastIndexOf(“el”) ;
Retornará el valor 20, correspondiente a la posición de la letra “e” de la palabra “cielo” en la cadena.
C
LASE
S
TRING
contains()
Retorna falso (false) o verdadero (true) indicando si una cadena se encuentra o no dentro de la otra.
Ejemplo.
String cadena = "Cali sucursal del cielo"; cadena. contains(“cielo”) ;
Retornará el valor true, indicando que la palabra “cielo” se encuentra en el contenido de la variable cadena.
C
LASE
S
TRING
equals()
Retorna falso (false) o verdadero (true) indicando si una cadena es o no igual a la otra, diferencia de minúscula y mayúsculas, por tanto “a” es diferente de “A”.
Ejemplo.
String cadena = "Cali"; cadena. equals (“Cali”) ;
Retornará el valor true, indicando que en contenido de la variable es igual a la palabra “Cali”.
C
LASE
S
TRING
equalsIgnoreCase()
Retorna falso (false) o verdadero (true) indicando si una cadena es o no igual a la otra, no diferencia de minúscula y mayúsculas, por tanto “a” es igual a “A”.
Ejemplo.
String cadena = "CALI";
cadena. equalsIgnoreCase(“cali”) ;
Retornará el valor true, indicando que en contenido de la variable es igual a la palabra “cali”, a pesar que la una está en mayúscula y la otra
C
LASE
S
TRING
length()
Retorna un valor entero que indica la longitud (cantidad de caracteres) de la cadena
Ejemplo.
String cadena = “Cali sucursal del cielo"; cadena. length() ;
Retornará el valor 23 indicando la cantidad de caracteres que tiene la cadena.
C
LASE
S
TRING
substring()
Retorna una parte de una cadena, de acuerdo a las posiciones que se especifiquen. Si sólo se especifica una sola posición se obtendrá la subcadena desde esa posición hasta el final. Al especificar 2 posiciones se obtendrá la subcadena que se encuentra en esas dos posiciones
Ejemplo.
String cadena = “Cali sucursal del cielo";
C
LASE
S
TRING
Ejemplo 2:
C
LASE
S
TRING
Ejemplo 2:
C
LASE
M
ATH
La clase Math en el lenguaje de
programación contiene métodos que permiten realizar operaciones numéricas tales como: valor absoluto, rerdondeo, números aleatorios, raíz cuadrara, funciones trigonométricas, entre otras .
Para términos prácticos se abordará los métodos más utilizados
abs ceil cos exp floor log max min pow random round sin tan sqrt PI
C
LASE
M
ATH
abs()
Retorna el valor absoluto de un numero especificado
Ejemplo.
int num1 = -10;
C
LASE
M
ATH
ceil()
Retorna el valor redondeado al siguiente entero de tipo doble del numero especificado.
Ejemplo.
float num1 = 12.54f;
C
LASE
M
ATH
floor()
Retorna el valor redondeado al anterior entero de tipo doble del numero especificado.
Ejemplo.
float num1 = 12.54f;
C
LASE
M
ATH
round()
Retorna el valor redondeado del numero especificado, si el decimal es menor a .5 redondeará al anterior entero, si es mayo o igual a .5 redondeará al siguiente entero .
Ejemplo.
float num1 = 12.54f; float num2 = 12.34f; float num3 = 12.5f;
C
LASE
M
ATH
random()
Retorna un valor aleatorio entre 0.0 y 1.0.
Ejemplo.
double aleatorio;
C
LASE
M
ATH
max()
Retorna el valor mayor entre dos números.
Ejemplo.
float num3 = 12.54f; float num4 = 12.34f;
C
LASE
M
ATH
min()
Retorna el valor menor entre dos números.
Ejemplo.
float num3 = 12.54f; float num4 = 12.34f;
C
LASE
M
ATH
pow(base,exponente)
Retorna el valor de la potencia de una valor base a un valor de exponente.
Ejemplo.
float num6 = 3.0f;
C
LASE
M
ATH
sqrt()
Retorna el valor de la raíz cuadrada de un numero.
Ejemplo.
float num7 = 25.0f;
C
LASE
M
ATH
PI
Retorna el valor pi.
Ejemplo.
C
LASE
M
ATH
sin()
Retorna el valor del seno trigonométrico de un ángulo.
Ejemplo.
float angulo=90f;
C
LASE
M
ATH
cos()
Retorna el valor del coseno trigonométrico de un ángulo.
Ejemplo.
float angulo=90f;
C
LASE
M
ATH
tan()
Retorna el valor de la tangente trigonométrica de un ángulo.
Ejemplo.
float angulo=90f;
C
LASE
M
ATH
tan()
Retorna el valor de la tangente trigonométrica de un ángulo.
Ejemplo.
float angulo=90f;
C
LASE
S
TRING
Ejemplo 3:
C
LASE
S
TRING
Ejemplo 4:
Se requiere diseñar un programa en Java que permita calcular la velocidad con respecto a tierra real de un aeroplano y el ángulo entre la ruta real del mismo y la dirección este.
Se conoce que el aeroplano vuela a una determinada velocidad (km/h) hacia el nordeste, en una dirección que forma un ángulo determinado con la dirección este.
El viento está soplando a una determinada velocidad (km/h) en la dirección noroeste, formando un determinado ángulo con la dirección norte.
C
LASE
S
TRING
Ejemplo 4:
Análisis Datos de Entrada • Velocidad de Aeroplano. • Ángulo de Aeroplano. • Velocidad de Viento. • Ángulo de Viento. Datos de Salida• Velocidad con respecto de tierra real del aeroplano. • Angulo real del aeroplano y dirección este.
C
LASE
S
TRING
Ejemplo 4:
Análisis
Proceso
• Vx = Velocidad Aeroplano * Coseno(Angulo Aeroplano) • Vy = Velocidad Aeroplano * Seno(Angulo Aeroplano) • Wx = -Velocidad Viento * Seno(Angulo Viento)
• Wy = Velocidad Viento * Coseno(Angulo Viento) • Ux = Vx + Wx
• Uy = Vy + Wy
• VelocidadRealAerplano = Raiz Cuadrada (Ux2+ Uy2)