Resumen Java
Resumen Java
INDEX
·0 MENU
·1 LIMITAR CANTIDAD DE DECIMALES DE UN REAL
·2 CAST
·3 OPERADORES ARITMETICOS
·4 OPERADORES UNARIOS
·5 STRING (MANEJO DE CADENAS)
·6 TRY...CATCH
·7 ESTRUCTURA REPETITIVA FOR
·8 ESTRUCTURA CONDICIONAL SIMPLE-DOBLE-ANIDADA
·9 ESTRUCTURA SECUENCIAL
·10 NUMEROS ALEATORIOS
·11 MATH
·12 VECTOR (ARRAY UNIDEIMENSIONAL)
·13 EXPRESION REGULAR
·14 COMBINACION DE ESTRUCTURAS BASICAS
·15 CONSOLE
·16 VALIDAR ENTRADA POR TECLADO
·17 ENTRADA POR TECLADO DE UNA CADENA
·18 ENTRADA POR TECLADO DE UN CARACTER CON ECO
·19 ENTRADA POR TECLADO DE UN CARACTER SIN ECO
·20 INTERFACE
·21 CLASE ABSTRACTA
MENU
EJEMPLO 0001
(A)
(B)
IMPRIMIR CARACTER UNICODE
(1) Ejemplo de codigo unicode para caracteres conocidos.
\u00e1 -> á
\u00e9 -> é
\u00ed -> í
\u00f3 -> ó
\u00fa -> ú
\u00c1 -> Á
\u00c9 -> É
\u00cd -> Í
\u00d3 -> Ó
\u00da -> Ú
\u00f1 -> ñ
\u00d1 -> Ñ
(A)
(B)
import java.text.DecimalFormat;
(C)
(D)
(E)
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DecimalFormat;
import java.math.BigDecimal;
import java.math.RoundingMode;
(9)
(D)
import java.text.DecimalFormat;
public class Ejemplo {
public static void main(String[] args) {
double d = Math.PI;
DecimalFormat df = new DecimalFormat("#.000");
String s = df.format(d); //3,142
String sER = ",";
String s1 = s.replaceAll(sER, ".");
double dNumero2Decimal = Double.parseDouble(s1);
System.out.println("Orignal = " + d); // 3.141592653589793
System.out.println("3 Decimal = " + dNumero2Decimal); // 3.142
}
}
(E)
(F)
(G)
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DecimalFormat;
import java.math.BigDecimal;
import java.math.RoundingMode;
CAST
(1) Redondear un numero real con varias cifras decimales a su parte entera.
OPERADORES ARITMETICOS
(1) Operadores aritméticos básicos.
+ Suma
- Resta
* Multiplicación
/ Divsión Real, División Entera
% Resto Real, Resto Entero
OPERADORES UNARIOS
(1) Operadores unarios básicos.
(3) Buscar un dígito, que posición ocupa dentro de un número entero de muchos dígitos.
(8) Remplazar en una cadenas todas las letras 'a' por 'x'.
(9) Cambiar todas las vocales de una cadena por la letra 'x'.
(11) Quitar los espacios en blanco añadidos al inicio y final de una cadena.
(13) Obtener las palabras de la siguiente oración separados por un espacio en blanco "Walter
Ismale Sagastegui Lescano".
(14) Obtener la cadena "emanuel" de la siguiente oración "es españa emanuel especie".
(15) Obtener la cadena "Guatemala" de la siguiente oración "Un pais maravilloso es Guatemala mas
que cualquier otro".
TRY...CATCH
try {
...
(2)
(3)
(4)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
ESTRUCTURA SECUENCIAL
(1)
(2)
(3)
(4)
(5)
(6)
(7)
import java.io.*;
(8)
(9)
(10)
public class Ejemplo {
public static void main(String[] args) {
final float MILLA_METRO = 1609.344f; //Equivalencia 1 milla = 1609.344 metros
final float PIE_METRO = 0.3048f;
final float PULGADA_METRO = 0.0254f;
float millas = 5, pies = 6, pulgadas = 7, metros;
metros = millas * MILLA_METRO + pies * PIE_METRO + pulgadas * PULGADA_METRO;
System.out.println("Longitud = " + metros + "metros");
}
}
NUMEROS ALEATORIOS
(1) Generar un número aleatorio entero en el rango [1-6], igual a un dado.
MATH
(A) REDONDEAR
(C) POTENCIA
(D) CONSTANTE PI Y E
double n = Math.log(1.0); ---> 0.0 (E elevado a 0 es 1) (A cuanto hay que elevar E para obtener
1)
double n = Math.log(10.0); ---> 2.302585092994046 (E elevado a 2.302585092994046 es 10)
double n = Math.log(Math.E); ---> 1.0 (E elevado a 1 es E)
(F) EXPONENCIAL NEPERIANA (BASE E)
import java.util.Scanner;
import java.util.Scanner;
public class Ejemplo {
public static void main(String arg[]) {
Scanner sc = new Scanner(System.in);
char[] c =
{'T','R','W','A','G','M','Y','F','P','D','X','B','N','J','Z','S','Q','V','H','L','C','K','E'};
String s;
String sER = "[0-9]{8,8}";
int iD, iR;
do {
System.out.print("Ingrese DNI? ");
s = sc.next();
}while(!s.matches(sER));
iD = Integer.parseInt(s);
iR = iD % 23;
System.out.println("Letra = " + c[iR]);
}
}
(3)
import java.util.Scanner;
public class Ejemplo {
public static void main(String arg[]) {
int[] a1 = {1,2,3};
//int[] a2 = {5,7,8,1,2,3,5,6}; //Si
//int[] a2 = {1,2,3,5,7,8,4,4}; //Si
int[] a2 = {5,7,8,1,2,2,5,6}; //No
//int[] a2 = {5,7,8,3,2,1,2,3}; //Si
boolean inicio, bandera;
int i = 0;
while(i < a2.length) {
inicio = false;
if(a2[i] == a1[0]) {
inicio = true;
}else {
i++;
}
if(inicio == true) {
bandera = true;
for(int j=0; j<a1.length; j++) {
if(a1[j] != a2[i]) bandera = false;
i++;
}
i--;
if(bandera == true) {
System.out.println("Si");
break;
}else {
i--;
System.out.println("No");
inicio = false;
}
}
}
}
}
EXPRESION REGULAR
(1) Probar las expresiones regulares.
import java.util.Scanner;
(2) Remplazar todo numero de cualquier cantidad de digitos presente en una oración por la cadena
"##".
(4) Cambiar la cadena "españa" por esta otra "España" en la siguente oración "En españa se aprecia
modernidad, pero españa tambien es segura".
(5)
EJEMPLOS
(1) . ---> k, @, #, 0, 9, 1, a
(2) \\d = [0-9] ---> 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
(3) \\D = [^0-9] ---> #, %, _, a, A, Z, z, ?, .
(4) \\s = [ \t\n\x0B\f\r] --->
(5) \\S = [^\s] ---> d, #, @, a
(6) \\w = [a-zA-Z_0-9] ---> a, A, 0, 1, _
(7) \\W = [^\w] ---> @, #, ?
(6)
CHARACTER CLASSES
(7)
(A) Empieza con una letra mayuscula y continua con cualquier cosa.
[A-Z].*
\\d{1,2}
09
12
1
0
\\d{4}
2017
2018
0000
1234
(D) Fecha
\\d{1,2}/(?i)(ene|feb|mar|abr|may|jun|jul|ago|sep|oct|nov|dic)/\\d{4}
11/dic/2014
1/nov/2014
1/AGO/2014
21/Oct/2014
(E) DNI
\\d{8}[A-HJ-NP-TV-Z]
DNI
01234567C
51019578N
45653743P
11111111A
[0-9]{1}
9
0
1
[0-9]{1,2}
91
00
0
(8)
META CARACTERES
(9)
CUANTIFICADORES
{X} ---> Indica que lo que va justo antes de las llaves se repite X veces
{X,Y} ---> Indica que lo que va justo antes de las llaves se repite mínimo X veces y máximo Y
veces. También podemos poner {X,} indicando que se repite un mínimo de X veces sin límite máximo.
* ---> Indica 0 ó más veces. Equivale a {0,}
+ ---> Indica 1 ó más veces. Equivale a {1,}
? ---> Indica 0 ó 1 veces. Equivale a {0,1}
. ---> Es un comodin que sustituye a un caracter (cualquier caracter)
\ ---> El carácter puesto a continuación será convertido en caracter especial o, si ya es
especial, deja de ser especial
(10)
EXPRESION
(C) Todas las cadenas que inicen con la secuencia "abc" y continue con cualquier cosa.
(D) Todas las cadenas con un mínimo de 5 letras mayusculas o minusculas y un máxmo de 10.
(E) Todas las cadenas formadas por una o mas veces la secuencia "es".
(G) Todas las cadenas que inicien con una letra distinta de "e" ó "o" y terminen con la letra "s".
(H) Todas las cadenas que inician con la letra "e" y contnua con cero o una letra "s".
(I) Todas las cadenas que inician con "s" sigue con un caracter calquiera y termina en "s".
(J) Todas las cadenas que inician con "hotmail" sigue con "." y termina con "com".
https://jarroba.com/busqueda-de-patrones-expresiones-regulares/
(2)
(3)
(4)
(5)
(6)
import java.io.*;
public class Ejemplo {
public static void main(String[] args) {
String login, password;
char[] passwordArray;
Console consola = System.console();
if(consola == null) {
System.out.printf ("No existe una consola asociada a esta JVM");
System.exit(0); //Termina la aplicación
}
consola.printf("INGRESA AL SISTEMA\n");
login = consola.readLine("Login: ");
passwordArray = consola.readPassword("Password: ");
password = new String (passwordArray); //Convierte el arreglo de caracteres en un String
if(login.equals("walter") && password.equals("12345678"))
consola.printf("Acceso permitido");
else
consola.printf("\nAcceso denegado, el usuario introducido es: " + login + ", y el
password introducido es: " + password + "\n");
}
}
(2)
import java.io.*;
public class Ejemplo {
public static void main(String[] args) {
String login, password;
String mensajeLogin = "Login: ";
String mensajePassword = "Password: ";
char[] passwordArray;
Console consola = System.console();
if(consola == null) {
System.out.printf ("No existe una consola asociada a esta JVM");
System.exit(0); //Termina la aplicación
}
consola.printf("INGRESA AL SISTEMA\n");
login = consola.readLine("%s", mensajeLogin);
passwordArray = consola.readPassword("%s", mensajePassword);
password = new String (passwordArray); //Convierte el arreglo de caracteres en un String
if(login.equals("walter") && password.equals("12345678"))
consola.printf("Acceso permitido");
else
consola.printf("\nAcceso denegado, el usuario introducido es: " + login + ", y el
password introducido es: " + password + "\n");
}
}
(3)
import java.io.*;
public class Ejemplo {
public static void main(String[] args) {
String login, password;
String mensajeLogin = "Login: ";
String mensajePassword = "Password: ";
char[] passwordArray;
Console consola = System.console();
if(consola == null) {
System.out.printf ("No existe una consola asociada a esta JVM");
System.exit(0); //Termina la aplicación
}
consola.printf("INGRESA AL SISTEMA\n");
consola.printf("Login: ");
login = consola.readLine();
consola.printf("Password: ");
passwordArray = consola.readPassword();
password = new String (passwordArray); //Convierte el arreglo de caracteres en un String
if(login.equals("walter") && password.equals("12345678"))
consola.printf("Acceso permitido");
else
consola.printf("\nAcceso denegado, el usuario introducido es: " + login + ", y el
password introducido es: " + password + "\n");
}
}
import java.util.Scanner;
Decir si una persona es mayor o menor de edad. La entrada solo permite una edad de número entero
en el rango (0,150].
import java.util.Scanner;
import java.io.*;
Decir si una persona es mayor o menor de edad. La entrada solo permite una edad de número entero
en el rango (0,150].
import java.util.Scanner;
import java.io.*;
import java.io.*;
----------------------
--- Usando Scanner ---
----------------------
import java.util.*;
----------------------
--- Usando Console ---
----------------------
import java.io.*;
import java.io.*;
--------------------------------
--- Usando InputStreamReader ---
--------------------------------
import java.io.*;
----------------------
--- Usando Scanner ---
----------------------
import java.util.*;
----------------------
--- Usando Console ---
----------------------
import java.io.*;
INTERFACE
EJEMPLO 0002
interface Series {
int getSiguiente(); //Retorna el siguiente número de la serie
void reiniciar(); //Reinicia
void setComenzar(int x); //Establece un valor inicial
}
--->
Valor: 2
Valor: 4
Valor: 6
Valor: 8
Valor: 10
Reiniciando
Valor: 2
Valor: 4
Valor: 6
Valor: 8
Valor: 10
Iniciando en 100
Valor: 102
Valor: 104
Valor: 106
Valor: 108
Valor: 110
EJEMPLO 0003
interface Series {
int getSiguiente(); //Retorna el siguiente número de la serie
void reiniciar(); //Reinicia
void setComenzar(int x); //Establece un valor inicial
}
--->
Valor: 2
Valor: 4
Valor: 6
Valor: 8
Valor: 10
Reiniciando
Valor: 2
Valor: 4
Valor: 6
Valor: 8
Valor: 10
Iniciando en 100
Valor: 102
Valor: 104
Valor: 106
Valor: 108
Valor: 110
Anterior = 108
EJEMPLO 0004
interface Series {
int getSiguiente(); //Retorna el siguiente número de la serie
void reiniciar(); //Reinicia
void setComenzar(int x); //Establece un valor inicial
}
--->
EJEMPLO 0005
Para definir un conjunto de constantes compartidas, cree una interfaz que contenga solo estas
constantes, sin ningún método.
--->
0
1
2
3
4
5
6
7
8
9
LIMITE ERROR
EJEMPLO 0006
Una interfaz puede heredar otra mediante el uso de la palabra clave extends.
--->
Implementación de metodo1().
Implementación de metodo2().
Implementación de metodo3().
CLASE ABSTRACTA
·22 Abstracción signfica resaltar lo mas representativo de algo sin importar los detalles.
·23 En inglés abstract significa “resumen”, por eso en algunos textos en castellano a las clases
abstractas se les llama resúmenes.
·24 Una clase abstracta para Java es una clase de la que nunca se van a crear instancias:
simplemente va a servir como superclase a otras clases.
·25 Una clase de la que no se tiene intención de crear objetos, sino que únicamente sirve para
unificar datos u operaciones de subclases, puede declararse de forma especial en Java: como
clase abstracta.
·26 La declaración de que una clase es abstracta se hace con la sintaxis public abstract class
NombreDeLaClase { … }. Por ejemplo public abstract class Profesor. Cuando utilizamos esta
sintaxis, no resulta posible instanciar la clase, es decir, no resulta posible crear objetos
de ese tipo. Sin embargo, sigue funcionando como superclase de forma similar a como lo haría
una superclase “normal”. La diferencia principal radica en que no se pueden crear objetos de
esta clase.
·27 Para que una clase sea abstracta la condición es que al menos uno de sus métodos sea
abstracto.
·28 Si una clase incluye un método abstracto, forzosamente la clase será una clase abstracta.
·29 Los métodos abstractos forzosamente habrán de estar sobreescritos en las subclases.
·30 Podemos ver un método abstracto como una palanca que fuerza dos cosas: la primera, que no se
puedan crear objetos de una clase. La segunda, que todas las subclases sobreescriban el método
declarado como abstracto.
·31 Una clase abstracta no puede ser instanciada, pero pueden crearse subclases concretas sobre la
base de una clase abstracta, y crear instancias de estas subclases. Para ello hay que heredar
de la clase abstracta y anular los métodos abstractos, es decir, implementarlos.
EJEMPLO 0007
EJEMPLO 0008