Vous êtes sur la page 1sur 24

Fundamentos de Programación Java

Unidad IV. INTRODUCCION A LA PROGRAMACION

Clasificación del Software:


El software es la parte lógica(intangible) de una computadora, que permite el manejo de los
recursos y la realización de tareas especificas, también denominados programas. En general el
software se clasifica en 2 grupos:
1. Software de Sistemas
2. Software de Aplicación

1. SOFTWARE DE SISTEMAS: Son aquellos programas que permiten la administración de la


parte física o los recursos de la computadora, es la que interactúa entre el usuario y los
componentes hardware de la computadora.
En seguida se muestra como se clasifica a su vez este grupo:
Compiladores
Procesadores de Lenguajes
Intérpretes

software de Sistemas:
Basados en caracteres
Sistemas Operativos
Basados en una Interfaz Gráfica

2. SOFTWARE DE APLICACION: Son aquellos programas que nos ayudan a realizar tareas
específicas como son: edición de textos, imágenes, cálculos, etc. a estos programas también se les
conoce como aplicaciones.

Software de Uso General


El software para uso general ofrece la estructura para un gran número de aplicaciones
empresariales, científicas y personales. El software de hoja de cálculo, de diseño asistido por
computadoras (CAD), de procesamiento de texto, de manejo de Bases de Datos, pertenece a esta
categoría. La mayoría de software para uso general se vende como paquete; es decir, con software
y documentación orientada al usuario (manuales de referencia, plantillas de teclado y demás ).

Software de aplicaciones
El software de aplicación esta diseñado y escrito para realizar tareas específicas personales,
empresariales o científicas como el procesamiento de nóminas, la administración de los recursos
humanos o el control de inventarios. Todas éstas aplicaciones procesan datos (recepción de
materiales) y generan información (registros de nómina) para el usuario.

Definición de Lenguaje
Lenguajes de Programación: Cualquier lenguaje es solamente un conjunto de reglas para
especificar la forma en que las cosas deben expresarse a fin de que sean entendidas. Un lenguaje
de programación es un conjunto de símbolos, caracteres y reglas que le permiten a las personas
comunicarse con la computadora.

Los lenguajes de programación tienen un conjunto de instrucciones o sentencias cada una de las
cuales especifica ciertas operaciones que debe ejecutar la computadora.
Lic. Felipe Rodríguez Ramírez 1/24
Fundamentos de Programación Java

Los lenguajes de programación se clasifican en:

Lenguaje Maquina: Son aquellos cuyas instrucciones están escritas en lenguajes directamente
entendibles por la computadora y no necesitan traducción posterior para que la CPU pueda
comprender y ejecutar el programa. Las instrucciones en lenguaje maquina se expresan en
términos de la unidad de memoria mas pequeña el bit (dígito binario 0 o 1) ya que son cadenas
binarias que especifican una operación y las direcciones de memoria implicadas..

Ventajas del Lenguaje Máquina


Posibilidad de cargar (transferir un programa a memoria) sin necesidad de traducción posterior, lo
que supone una velocidad de ejecución superior a cualquier otro lenguaje de programación.

Desventajas del Lenguaje Máquina


Dificultad y lentitud en la codificación.
Poca fiabilidad.
Gran dificultad para verificar y poner a punto los programas.
Los programas solo son ejecutables en el mismo procesador (CPU).

Lenguaje de Bajo Nivel (Ensamblador): Son más fáciles de utilizar que los lenguajes máquina.
Son dependientes del hardware. El lenguaje de bajo nivel por excelencia es el ensamblador. Las
instrucciones en lenguaje ensamblador son instrucciones conocidas como nemotécnicos para las
operaciones y direcciones simbólicas.. Por ejemplo, nemotécnicos típicos de operaciones
aritméticas son : ADD, SUB, DIV, etc. Un programa escrito en lenguaje ensamblador, requiere de
una fase de traducción al lenguaje máquina para poder ser ejecutado directamente por la
computadora.
Ventajas del lenguaje ensamblador frente al lenguaje máquina
Mayor facilidad de codificación y, en general, su velocidad de cálculo.
Desventajas del lenguaje ensamblador
Dependencia total de la máquina lo que impide la transportabilidad de los programas (posibilidad
de ejecutar un programa en diferentes máquinas, la formación de los programadores es más
compleja que la correspondiente a los programadores de alto nivel, ya que exige no solo las
técnicas de programación, sino también el conocimiento del interior de la máquina.
Lenguaje de Alto Nivel: (C, Pascal, Cobol, Fortran, etc.) son aquellos en los que las instrucciones
o sentencias a la computadora son escritas con palabras similares a los lenguajes humanos (en
general en ingles), lo que facilita la escritura y comprensión del programa. Un programa escrito en
lenguaje de alto nivel es independiente de la máquina (las instrucciones no dependen del diseño
del hardware o de una computadora en particular), por lo que estos programas son portables .
Ventajas de los lenguajes de alto nivel
El tiempo de formación de los programadores es relativamente corto comparado con otros
lenguajes, la escritura de programas se basa en reglas sintácticas similares a los lenguajes
humanos, las modificaciones y puestas a punto de los programas son más fáciles.
Desventajas de los lenguajes de alto nivel
Incremento del tiempo de puesta a punto al necesitarse diferentes traducciones del programa
fuente para conseguir el programa definitivo. No se aprovechan los recursos internos de la

Lic. Felipe Rodríguez Ramírez 2/24


Fundamentos de Programación Java
máquina que se explotan mucho mejor en lenguajes máquina y ensambladores. Aumento de la
ocupación de memoria. El tiempo de ejecución de los programas es mucho mayor.

Tipos De Datos
El tipo de dato determina la naturaleza del conjunto de valores que puede tomar una variable.
Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carácter, tal como
‘b’, un valor entero tal como 35.
Numéricos
Simples Lógicos
(sin estructura) alfanuméricos (string)
Tipos de

datos Arreglos (Vectores, Matrices)


Estructurados Registros
Archivos

Tipos de Datos Simples

Datos Numéricos: Permiten representar valores escalares de forma numérica, esto incluye a los
números enteros y los reales.
Datos Lógicos: Son aquellos que solo pueden tener dos valores (cierto o falso) ya que representan
el resultado de una comparación entre otros datos (numéricos o alfanuméricos).
Datos Alfanuméricos (String): Es una secuencia de caracteres alfanuméricos que permiten
representar valores identificables de forma descriptiva, esto incluye nombres de personas,
direcciones, etc. Es posible representar números como alfanuméricos, pero estos pierden su
propiedad matemática, es decir no es posible hacer operaciones con ellos. Este tipo de datos se
representan encerrados entre comillas.
Ejemplo: “Fundamentos de Programación ”

LENGUAJE DE PROGRAMACION JAVA


¿Qué es Java?
Java es toda una tecnología orientada al desarrollo de software con el cual podemos realizar
cualquier tipo de programa. Hoy en día, la tecnología Java ha cobrado mucha importancia en el
ámbito de Internet gracias a su plataforma J2EE. Pero Java no se queda ahí, ya que en la industria
para dispositivos móviles también hay una gran acogida para este lenguaje.

La tecnología Java está compuesta básicamente por 2 elementos: el lenguaje Java y su plataforma.
Con plataforma nos referimos a la máquina virtual de Java (Java Virtual Machine).

Una de las principales características que favoreció el crecimiento y difusión del lenguaje Java es
su capacidad de que el código funcione sobre cualquier plataforma de software y hardware. Esto
significa que nuestro mismo programa escrito para Linux puede ser ejecutado en Windows sin
ningún problema. Además es un lenguaje orientado a objetos que nos brinda una solución para
cada necesidad que pudiéramos tener.

EL ENTORNO DE DESARROLLO DE JAVA

Existen distintos programas comerciales que permiten desarrollar código Java. La compañía Sun,
creadora de Java, distribuye gratuitamente el Java Development Kit (JDK). Se trata de un conjunto
Lic. Felipe Rodríguez Ramírez 3/24
Fundamentos de Programación Java
de programas y librerías que permiten desarrollar, compilar y ejecutar programas en Java.
Cualquier programador con un mínimo de experiencia sabe que una parte muy importante
(muchas veces la mayor parte) del tiempo destinado a la elaboración de un programa se destina a
la detección y corrección de errores.
Los IDEs (Integrated Development Environment), tal y como su nombre indica, son entornos de
desarrollo integrados, con los cuales en un mismo programa es posible escribir el código Java,
compilarlo y ejecutarlo sin tener que cambiar de aplicación. Estos entornos integrados permiten
desarrollar las aplicaciones de forma mucho más rápida, incorporando en muchos casos librerías
con componentes ya desarrollados, los cuales se incorporan al proyecto o programa. Ejemplos de
este tipo de entornos encontramos a JCreator, Eclipse, Netbeans, etc.

El compilador de Java

Se trata de una de las herramientas de desarrollo incluidas en el JDK. Realiza un análisis de


sintaxis del código escrito en los archivos fuente de Java (con extensión *.java). Si no encuentra
errores en el código genera los archivos compilados (con extensión *.class). En otro caso muestra
la línea o líneas erróneas. En el JDK de Sun dicho compilador se llama javac.exe. Tiene
numerosas opciones, algunas de las cuales varían de una versión a otra.

La JVM es el intérprete de Java. Ejecuta los “bytecodes” (archivos compilados con extensión
*.class) creados por el compilador de Java (javac.exe).

Tipos de datos y Variables en JAVA


Todas las variables en el lenguaje Java deben tener un tipo de dato. El tipo de la variable
determina los valores que la variable puede contener y las operaciones que se pueden realizar con
ella. Existen dos categorías de datos principales en el lenguaje Java: los tipos primitivos y los tipos
referenciados.

Los tipos primitivos contienen un sólo valor e incluyen los tipos como los enteros, coma flotante,
los caracteres, etc.. La tabla siguiente muestra todos los tipos primitivos soportados por el lenguaje
Java, su formato, su tamaño y una breve descripción de cada uno.
Tipo Tamaño Descripción Valor
(Números enteros)
byte 1 byte Entero de un Byte -128 a 127
short 2 bytes Entero corto -32768 a 32767
int 4 bytes Entero -2.147.483.648 a 2.147.483.647
-9.223.372.036.854.775.808 a
long 8 bytes Entero largo
9.223.372.036.854.775.807
(Números reales)
Coma flotante de precisión simple -3.402823E38 a -1.401298E-45 y
float 4 bytes IEEE 754
Entre 6 y 7 cifras decimales de 1.401298E-45 a 3.402823E38
-1.79769313486232E308 a
Coma flotante de precisión doble -4.94065645841247E-324 y de
double 8 bytes IEEE 754
(15 cifras decimales) 4.94065645841247E-324 a
1.79769313486232E308
(otros tipos)
char 16-bit Caracter Un sólo carácter Código ASCII
boolean 1 byte valor booleano (verdadero o falso) True o false

Lic. Felipe Rodríguez Ramírez 4/24


Fundamentos de Programación Java
Los tipos primitivos de Java tienen algunas características importantes que se resumen a
Continuación:
1. El tipo boolean no es un valor numérico: sólo admite los valores true o false. El tipo bolean no
se identifica con el igual o distinto de cero, como en C/C++. El resultado de la expresión lógica
que aparece como condición en un bucle o en una bifurcación debe ser boolean.
2. El tipo char contiene caracteres en código UNICODE (que incluye el código ASCII), y ocupan
16 bits por carácter. Comprende los caracteres de prácticamente todos los idiomas.
3. Los tipos byte, short, int y long son números enteros que pueden ser positivos o negativos, con
distintos valores máximos y mínimos. A diferencia de C/C++, en Java no hay enteros unsigned.
4. Los tipos float y double son valores de punto flotante (números reales) con 6-7 y 15 cifras
decimales equivalentes, respectivamente.
5. Se utiliza la palabra void para indicar la ausencia de un tipo de variable determinado.
6. A diferencia de C/C++, los tipos de variables en Java están perfectamente definidos en todas y
cada una de las posibles plataformas. Por ejemplo, un int ocupa siempre la misma memoria y tiene
el mismo rango de valores, en cualquier tipo de computadora.

Caracteres de Java
Los caracteres de java pueden agruparse en letras, digitos, espacios en blanco, caracteres
especiales, signos de puntuación y secuencias de escape.

Letras, dígitos y otros

Estos caracteres son utilzados para formar las constantes, los identificadores y las palabras clave
de Java. Son los siguientes:
• Letras mayúsculas de los alfabetos internacionales:
A-Z (son válidas las letras acentuadas y la Ñ)
• Letras Minúsculas de los alfabetos internacionales:
a-z (son válidas las letras acentuadas y la ñ)
• Digitos de los alfabetos internacionales, entre los que se encuentran 0-9
• Caracteres “_”, “$” y cualquier caracter Unicode por encima de 00C0

Espacios en Blanco
Los caracteres espacio en blancotabulador horizontal, avance de página, nueva línea, retorno de
carro, son caracteres denominados espacios en blanco, porque la labor que desempeñan es la
misma que la del espacio en blanco: actuar como separadores entre los elementos de un programa,
lo cual permite escribir programas más legibles. Los espacios en blanco en exceso son ignorados
por el compilador.

Caracteres especiales y signos de puntuación


Este grupo de caracteres se utiliza de diferentes formas; por ejemplo, para indicar que un
identificador es una función o un array; para especificar una determinada operación, etc. Son los
siguientes:
, . ; : ? ‘ “ ( ) [ ] { } < ! | / \ ~ + % ^ * - = >

Secuencias de escape
Una secuencia de escape esta formada por el carácter \ seguido de una letra o combinación de
digitos. Son utilizados para hacer referencia a caracteres no imprimibles.
Lic. Felipe Rodríguez Ramírez 5/24
Fundamentos de Programación Java
El lenguaje Java tiene predefinidas las siguientes secuencias de escape:

Secuencia ASCII Definición


\n CR+LF Ir al principio de la siguiente línea
\t HT Tabulador Horizontal
\b BS Retroceso (Backspace)
\r CR Retorno de carro sin avance de línea
\f FF Alimentación de página solo para impresora
\’ ‘ Comilla simple
\” “ Comilla doble
\\ \ Barra invertida
\ddd Carácter ASCII. Representación octal
\udddd Carácter ASCII. Representación Unicode
\u0007 BEL Alerta, pitido
\u000B VT Tabulador vertical (sólo para impresora)

Identificadores
Es un conjunto de caracteres de cualquier longitud que sirve para identificar las entidades del
programa (clases, métodos, constantes, variables, paquetes, sentencias del programa, etc.). Cada
lenguaje tiene sus propias reglas que definen como pueden estar construidos.

Un identificador en Java se forma de la siguiente manera: consta de uno o más caracteres en


donde el primer carácter debe ser una letra, el carácter de subrayado _ o el carácter $. No se
pueden comenzar por un digito ni pueden contener caracteres especiales. Las letras pueden ser
mayúsculas o minúsculas. Una letra mayúscula es diferente a una minúscula. Pueden tener
cualquier número de caracteres.

Constantes Simbólicas

El uso de constantes dentro de un programa es importante porque hace más fácil de modificar un
programa. Declarar una constante simbólica significa decirle al compilador Java el nombre de la
constante y su valor. Esto se hace utilizando el calificador final y/o el static, como se indica en
seguida:
fnal static int cte1=1 ;
final static String cte2= »Pulse una tecla para continuar”;
final double cte3=3.1416;

Como se observa para declara una constante simbólica se debe anteponer el calificador final, o
bien los calificadores final y static, al tipo y nombre de la constante, que será iniciada con el valor
deseado. El primer caso corresponde cuando se desea declarar una constante dentro del cuerpo de
un método para que solo sea visible dentro de el y solo existe durante la ejecución del mismo; en
este caso se dice que es una constante local al método. El segundo caso corresponde cuando se
desea declarar una constante simbólica dentro de una clase y fuera de todo método esto con el fin
de que solo exista un acopia de la constante para todos los objetos que se declaren de esa clase
(esto se logra con el calificador static).Si no se especifica static cada objeto incluirá su propia
copia de la constante.Con el calificador final se especifica que el valor de la constante no se puede
modificar durante el programa ya que daría lugar a un error.

Lic. Felipe Rodríguez Ramírez 6/24


Fundamentos de Programación Java
Nombres de Variables en Java
Un programa se refiere al valor de una variable por su nombre. Por convención, en Java, los
nombres de las variables empiezan con una letra minúscula (los nombres de las clases empiezan
con una letra mayúscula). Si una variable está compuesta de más de una palabra, como
'nombreDato' las palabras se ponen juntas y cada palabra después de la primera empieza con una
letra mayúscula.

Un nombre de variable Java.


Debe ser un identificador legal de Java comprendido en una serie de caracteres Unicode. Unicode
es un sistema de codificación que soporta texto escrito en distintos lenguajes humanos. Unicode
permite la codificación de 34.168 caracteres. Esto le permite utilizar en sus programas Java varios
alfabetos como el japonés, el griego, el ruso o el hebreo. Esto es importante para que los
programadores puedan escribir código en su lenguaje nativo. No puede ser el mismo que una
palabra clave o el nombre de un valor booleano (true or false),
no deben tener el mismo nombre que otras variables cuyas declaraciones aparezcan en el mismo
ámbito.

Palabras Clave
Son una serie de palabras reservadas las cuales tienen un significado especial para Java y
por lo tanto no se pueden utilizar como nombres de variables. Dichas palabras son:

abstract default If package private this


boolean do implements protected public throw
break double import return throws transient
byte else instanceof short try
case extends int static void
catch final interface super volatile
char finally long switch while
class float native synchronized
const for new
continue goto null

Declaración
La Sintaxis para la declaración de una variable es la siguiente:
tipo variable;
Donde tipo es el nombre de un tipo de dato conocido por Java y variable es un identificador válido
en Java.
Es preciso declarar las variables antes de utilizarlas. Se puede declara una variable en tres lugares:
• En una clase como miembro de la clase
• Al principio de un método o bloque de código
• En el punto de utilización

El ámbito de una variable es el ámbito en le que están declaradas.

Comentarios

Lic. Felipe Rodríguez Ramírez 7/24


Fundamentos de Programación Java
Un comentario es un mensaje a cualquiera que lea el código fuente con la intención de hacer mas
clara y fácil la comprensión de un programa. Java incluye tres tipos de comentarios:
1. Para comentarios que ocupan más de una línea se utilizan los caracteres /* al empezar y */
para finalizar el comentario. Estos comentarios pueden ocupar varias líneas, sin embargo
no pueden anidarse.
2. Para comentarios de una sola línea se utilizan los caracteres // al inicio de la línea.
3. Son comentarios especiales que se utilizan para generar la documentación acerca del
programa. Este tipo de comentario comienza con /** y termina con */.

Expresiones
Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y
nombres de funciones especiales. Por ejemplo: a+(b * 2)/c
Cada expresión toma un valor que se determina tomando los valores de las variables y constantes
implicadas y la ejecución de las operaciones indicadas. Una expresión consta de operadores y
operandos.

Según sea el tipo de datos que manipulan, se clasifican las expresiones en: Aritméticas,
relaciónales y lógicas

Operadores y Operandos
Operadores: Son elementos que relacionan de forma diferente, los valores de una o mas variables
y/o constantes. Es decir, los operadores nos permiten manipular valores.

Operadores de Java
Los operadores realizan algunas funciones en uno o dos operandos. Los operadores que requieren
un operador se llaman operadores unarios. Por ejemplo, ++ es un operador unario que incrementa
el valor su operando en uno.

Los operadores que requieren dos operandos se llaman operadores binarios. El operador = es un
operador binario que asigna un valor del operando derecho al operando izquierdo.

Los operadores unarios en Java pueden utilizar la notación de prefijo o de sufijo. La notación de
prefijo significa que el operador aparece antes de su operando.
operador operando

La notación de sufijo significa que el operador aparece después de su operando:


operando operador

Todos los operadores binarios de Java tienen la misma notación, es decir aparecen entre los dos
operandos:
op1 operador op2

Además de realizar una operación también devuelve un valor. El valor y su tipo dependen del tipo
del operador y del tipo de sus operandos. Por ejemplo, los operadores aritméticos (realizan las
operaciones de aritmética básica como la suma o la resta) devuelven números, el resultado típico

Lic. Felipe Rodríguez Ramírez 8/24


Fundamentos de Programación Java
de las operaciones aritméticas. El tipo de datos devuelto por los operadores aritméticos depende
del tipo de sus operandos: si sumas dos enteros, obtendrás un entero.

Operadores Aritméticos
El lenguaje Java soporta varios operadores aritméticos incluyendo + (suma), - (resta), *
(multiplicación), / (división), y % (módulo) en todos los números enteros y de coma flotante.

Esta tabla sumariza todas las operaciones aritméticas binarias en Java.

Operador Uso Descripción


+ op1 + op2 Suma op1 y op2
- op1 - op2 Resta op2 de op1
* op1 * op2 Multiplica op1 y op2
/ op1 / op2 Divide op1 por op2
% op1 % op2 Obtiene el resto de dividir op1 por op2

Nota: El lenguaje Java extiende la definición del operador + para incluir la concatenación de
cadenas.

Los operadores + y - tienen versiones unarias que seleccionan el signo del operando.
Operador Uso Descripción
+ + op Indica un valor positivo
- - op Niega el operando

Además, existen dos operadores de atajos aritméticos, ++ que incrementa en uno su operando, y --
que decrementa en uno el valor de su operando.

Operador Uso Descripción


++ op ++ Incrementa op en 1; evalúa el valor antes de incrementar
++ ++ op Incrementa op en 1; evalúa el valor después de incrementar
-- op -- Decrementa op en 1; evalúa el valor antes de decrementar
-- -- op Decrementa op en 1; evalúa el valor después de decrementar

Operadores Relacionales y Condicionales


Los valores relacionales comparan dos valores y determinan la relación entre ellos. Por ejemplo,
!= devuelve true si los dos operandos son distintos.

Esta tabla resume los operadores relacionales de Java.

Operador Uso Devuelve true si


> op1 > op2 op1 es mayor que op2
>= op1 >= op2 op1 es mayor o igual que op2
< op1 < op2 op1 es menor que op2
<= op1 <= op2 op1 es menor o igual que op2
== op1 = = op2 op1 y op2 son iguales
!= op1 != op2 op1 y op2 son distintos
Lic. Felipe Rodríguez Ramírez 9/24
Fundamentos de Programación Java

Frecuentemente los operadores relacionales se utilizan con otro juego de operadores, los
operadores condicionales, para construir expresiones de decisión más complejas. Uno de estos
operadores es && que realiza la operación Y booleana . Por ejemplo se puede utilizar dos
operadores relacionales diferentes junto con && para determinar si ambas relaciones son ciertas.

En algunas situaciones, el segundo operando de un operador relacional no será evaluado.


Consideremos esta sentencia:
((count < NUM_ENTRIES) && (System.in.read() != -1))
Si count es menor que NUM_ENTRIES, la parte izquierda del operando de && evalúa a false. El
operador && sólo devuelve true si los dos operandos son verdaderos. Por eso, en esta situación se
puede determinar el valor de && sin evaluar el operador de la derecha. En un caso como este,
Java no evalúa el operando de la derecha. Así no se llamará a System.in.read() y no se leerá un
carácter de la entrada estándar.

Operadores condicionales.

Operador Uso Devuelve true si


&& op1 && op2 op1 y op2 son verdaderos
|| op1 || op2 uno de los dos es verdadero
! ! op op es falso

El operador & se puede utilizar como un sinónimo de && si ambos operadores son booleanos.
Similarmente, | es un sinonimo de || si ambos operandos son booleanos.

Operadores de Asignación

Puedes utilizar el operador de asignación =, para asignar un valor a otro. Además del operador de
asignación básico, Java proporciona varios operadores de asignación que permiten realizar
operaciones aritméticas, lógicas o de bits y una operación de asignación al mismo tiempo.
Específicamente, supónga que se quiere añadir un número a una variable y asignar el resultado
dentro de la misma variable, como esto: i = i + 2;
Puedes simplificar esta sentencia utilizando el operador +=.
i += 2;
Las dos líneas de código anteriores son equivalentes.

Esta tabla lista los operadores de asignación y sus equivalentes.

Operador Uso Equivale a


+= op1 += op2 op1 = op1 + op2
-= op1 -= op2 op1 = op1 - op2
*= op1 *= op2 op1 = op1 * op2
/= op1 /= op2 op1 = op1 / op2
%= op1 %= op2 op1 = op1 % op2
&= op1 &= op2 op1 = op1 & op2
|= op1 |= op2 op1 = op1 | op2
^= op1 ^= op2 op1 = op1 ^ op2
Lic. Felipe Rodríguez Ramírez 10/24
Fundamentos de Programación Java
Expresiones Java
Las expresiones realizan el trabajo de un programa Java. Entre otras cosas, las expresiones se
utilizan para calcular y asignar valores a las variables y para controlar el flujo de un programa
Java. El trabajo de una expresión se divide en dos partes: realizar los cálculos indicados por los
elementos de la expresión y devolver algún valor.

Definición: Una expresión es una serie de variables, operadores y llamadas a métodos (construida
de acuerdo a la sintaxis del lenguaje) que evalúa a un valor sencillo.
El tipo del dato devuelto por una expresión depende de los elementos utilizados en la expresión.
La expresión count++ devuelve un entero porque ++ devuelve un valor del mismo tipo que su
operando y count es un entero. Otras expresiones devuelven valores booleanos, cadenas, etc...
Una expresión de llamada a un método devuelve el valor del método; así el tipo de dato de una
expresión de llamada a un método es el mismo tipo de dato que el valor de retorno del método.

En Java los operadores con una precedencia más alta se evalúan primero.

La tabla siguiente muestra la precedencia asignada a los operadores de Java. Los operadores se
han listado por orden de precedencia de mayor a menor. Los operadores con mayor precedencia se
evalúan antes que los operadores con precedencia relativamente menor. Lo operadores con la
misma precedencia se evalúan de izquierda a derecha.

Conversión entre tipos de datos


Cuando Java tiene que evaluar una expresión en la que intervienen operandos de diferentes tipos,
primero convierte, sólo para realizar las operaciones solicitadas, los valores de los Operandos al
tipo del operando cuya preescisión sea más alta. Cuando se trata de una asignación, convierte el
valor de la derecha al tipo de la variable de la izquierda siempre que no haya pérdida de
información. En otro caso Java exige que la conversión se realice explícitamente. La siguiente
figura resume los tipos colocados de izquierda a derecha de menos a más precisos; las flechas
indican las conversiones implícitas permitidas:

char

int long float double


byte
short

Estructura básica de un programa en Java


Un programa en Java esta dividido en clases. Una clase en si se puede entender como un programa
independiente, tiene sus propios datos y también maneja esos datos "a su modo", hablamos de
atributos y métodos.
Un método es un grupo de instrucciones que realizan una o más acciones. Uno de los métodos de
la clase principal debe ser obligatoriamente main().Asimismo, un programa contendrá una serie
de declaraciones import que permitirán incluir clases predefinidas.

La estructura general sería la siguiente:

Lic. Felipe Rodríguez Ramírez 11/24


Fundamentos de Programación Java
import paquete; //Declaración para importar clases incluidas en algún paquete
class NombreClase
{
public static void main( String [] args)
{ /* Esta línea especifica un método que el intérprete Java busca para ejecutar en primer
lugar, public significa que el método main puede ser llamado por cualquiera, incluyendo el
intérprete Java, static es una palabra clave que le dice al compilador que main se refiere a
la clase principal y no a ninguna instancia de la clase. De esta forma, si alguien intenta
hacer otra instancia de la clase, el método main no se instanciaría, void indica que main no
devuelve nada. Esto es importante ya que Java realiza una estricta comprobación de tipos,
incluyendo los tipos que se ha declarado que devuelven los métodos. args[] es la
declaración de un array de Strings. Estos son los argumentos escritos tras el nombre de la
clase en la línea de comandos:
*/
//Declaraciones locales;
Sentencias;
}
// Definiciones de otros métodos dentro de la clase
static tipo func1(…)
{
}

static tipo func2(…)


{
}
}

Una mínima aplicación en java


La aplicación más pequeña posible es la que simplemente imprime un mensaje en la pantalla.
Tradicionalmente, el mensaje suele ser "Hola Mundo". Esto es justamente lo que hace el siguiente
fragmento de código:

// Aplicación HolaMundo
class HolaMundo
{
public static void main( String[ ] args )
{
System.out.println("\n*********HOLA MUNDO BIENVENIDO A JAVA*******");
} // cierra main
} // cierra clase

Este ejemplo necesita una pequeña explicación.

• Todo en Java está dentro de una clase, incluyendo programas autónomos.


• El código fuente se guarda en archivos con el mismo nombre que la clase que contienen y con
extensión “.java”. Una clase (class) declarada pública (public) debe seguir este convenio. En
el ejemplo anterior, la clase es Hola, por lo que el código fuente debe guardarse en el fichero
“Hola.java”

Lic. Felipe Rodríguez Ramírez 12/24


Fundamentos de Programación Java
• El compilador genera un archivo de clase (con extensión “.class”) por cada una de las clases
definidas en el archivo fuente.
• Los programas que se ejecutan de forma independiente y autónoma, deben contener el método
”main()”.
• La palabra reservada ”void” indica que el método main no devuelve nada.
• El método main debe aceptar un array de objetos tipo String. Por acuerdo se referencia como
”args”, aunque puede emplearse cualquier otro identificador.
• La palabra reservada ”static” indica que el método es un método de clase, asociado con la
clase en vez de a instancias de la misma. El método main debe ser estático o ‘’’de clase’’’.
• La palabra reservada public significa que un método puede ser llamado desde otras clases, o
que la clase puede ser usada por clases fuera de la jerarquía de la propia clase. Otros tipos de
acceso son ”private” o ”protected”.
• La utilidad de impresión (en pantalla por ejemplo) forma parte de la librería estándar de Java: la
clase ‘’’System’’’ define un campo público estático llamado ‘’’out’’’. El objeto out es una
instancia de ‘’’PrintStream’’’, que ofrece el método ‘’’println(String)’’’ para volcar datos en la
pantalla (la salida estándar).

Aplicación HolaMundo

Vamos ver en detalle la aplicación anterior, línea a línea. Esas líneas de código contienen los
componentes mínimos para imprimir Hola Mundo en la pantalla.
//
// Aplicación HolaMundo
Estas líneas son comentarios.
class HolaMundo
{
Esta línea declara la clase HolaMundo. El nombre de la clase especificado en el archivo fuente se
utiliza para crear un archivo nombredeclase.class en el directorio en el que se compila la
aplicación. En nuestro caso, el compilador creará un archivo llamado HolaMundo.class.

public static void main( String args[] ) {


Como se comento toda clase debe contener el método main

System.out.println("\n*********HOLA MUNDO BIENVENIDO A JAVA*******");


Esta es la funcionalidad de la aplicación. Esta línea muestra el uso de un nombre de clase y
método. Se usa el método println() de la clase out que está en el paquete System.
El método println() toma una cadena como argumento y la escribe en el stream de salida estándar;
en este caso, la ventana donde se lanza la aplicación.

} //cierra main
} //cierra clase
Finalmente, se cierran las llaves que limitan el método main() y la clase HolaMundoApp.

Compilacion y Ejecucion de HolaMundo

Archivos Fuente Java


Se deberá construir usando cualquier editor de texto ascii por ejemplo el Bloc de notas de
windows y se deberá grabar en un nuevo archivo con el nombre de la clase (HolaMundo) y la
Lic. Felipe Rodríguez Ramírez 13/24
Fundamentos de Programación Java
extensión .java. Respetar mayusculas y minusculas que se hayan puesto en la clase, tener cuidado
si utiliza notepad porque en ocasiones lo graba como holamundo.java.txt si esto sucede no se
puede compilar o sdk informa que no lo encuentra, en notepad seleccionar tipo=all files o irse a
msdos y renombrarlo a .java solamente.

Compilación
El compilador javac se encuentra en el directorio bin por debajo del directorio java, donde se haya
instalado el JDK. Este directorio bin, si se han seguido las instrucciones de instalación, debería
formar parte de la variable de entorno PATH del sistema. Si no es así, tendría que revisar la
Instalación del JDK. El compilador de Java traslada el código fuente Java a byte-codes, que son
los componentes que entiende la Máquina Virtual Java.

Una vez creado el archivo fuente HolaMundoApp.java, se puede compilar con la línea siguiente:

c:\j2sdk1.4.0\misejemplos>javac HolaMundo.java

observar que j2sdk1.4.0\misejemplos es el folder que contiene el archivo HolaMundo.java. javac


es el compilador de java y lo que hace aparte de mostrar los errores que puede tener el programa
es crear un nuevo archivo con extensión .class, es decir en este ejemplo en el folder ahora aparte
de tener holamundo.java deberá haber un archivo llamado HolaMundo.class, que es el equivalente
a los archivos.exe o executables de windows.

Si no se han cometido errores al teclear ni se han tenido problemas con el path al archivo fuente ni
al compilador, no debería aparecer mensaje alguno en la pantalla, y cuando vuelva a aparecer el
prompt del sistema, se debería ver un archivo HolaMundoApp.class nuevo en el directorio donde
se encuentra el archivo fuente.

Ejecución
Para ejecutar la aplicación HolaMundoApp, hemos de recurrir al intérprete java, que también se
encuentra en el directorio bin, bajo el directorio j2sdk1.4.0. Se ejecutará la aplicación con la línea
siguiente
c:\j2sdk1.4.0\misejemplos>java HolaMundo

Enseguida aparecera en pantalla la respuesta de Java con el mensaje que se mando a desplegar en
este caso : HOLA MUNDO BIENVENIDO A JAVA (entre asteriscos).

Problemas de compilación
A continuación presentamos una lista de los errores más frecuentes que se presentan a la hora de
compilar un archivo con código fuente Java, nos basaremos en errores provocados sobre nuestra
mínima aplicación Java de la sección anterior, pero podría generalizarse sin demasiados
problemas.

Command not found


No se ha establecido correctamente la variable PATH del sistema para el compilador javac. El
compilador javac se encuentra en el directorio bin, que cuelga del directorio java, que cuelga del
directorio donde se haya instalado el JDK (Java Development Kit).

method printl(java.lang.String) not found in class java.io.PrintStream.


Lic. Felipe Rodríguez Ramírez 14/24
Fundamentos de Programación Java
System.out.printl( "HolaMundo!);
^
Error tipográfico, el método es println no printl.

Can´t find class HolaMundoApp


Este es un error muy sutil. Generalmente significa que el nombre de la clase es distinto al del
archivo que contiene el código fuente, con lo cual el archivo nombre_archivo.class que se genera
es diferente del que cabría esperar. Por ejemplo, si en nuestro archivo de código fuente de nuestra
aplicación HolaMundo.java colocamos en vez de la declaración actual de la clase HolaMundo, la
línea:

class Holamundo {

se creará un archivo Holamundo.class, que es diferente del HolaMundo.class, que es el nombre


esperado de la clase; la diferencia se encuentra en la a minúscula y mayúscula.

Un problema muy comun al tiempo de ejecución es que java mande un mensaje de classnotfound,
si esto pasa al querer ejecutar el programa, solo irse al prompt de msdos y escribir la orden:
C:>SET CLASSPATH=.;
Y volver a ejecutar el programa.

Un código fuente Java sólo puede tener una clase con el modificador de acceso public. Si el
modificador de la clase es public, el código fuente debe tener el mismo nombre que la clase. Un
archivo fuente (*.java) puede contener más de una clase, pero sólo una puede ser public.

CARACTERISTICAS DE PROGRAMAS O APLICACIONES EN CONSOLA

1.- Todos los programas en java son y empiezan con una clase.
2.- Todos los programas en java deben llevar un método principal, llamado main() quien es quien
contiene el código normal del programa.
3.- La clase y el método main deben abrir y cerrar sus propias llaves {}
4.- Las instrucciones terminan con punto y coma (;)
5.- Java también es "case sensitive" es decir diferencía mayúsculas y minúsculas.

Concepto de Clase

Una clase es una agrupación de datos (variables o campos) y de funciones (métodos) que operan
sobre esos datos. A estos datos y funciones pertenecientes a una clase se les denomina variables y
métodos o funciones miembro. La programación orientada a objetos se basa en la programación de
clases. Un programa se construye a partir de un conjunto de clases.

Una vez definida e implementada una clase, es posible declarar elementos de esta clase de
modo similar a como se declaran las variables del lenguaje (de los tipos primitivos int, double,
String, …). Los elementos declarados de una clase se denominan objetos de la clase. De una única
clase se pueden declarar o crear numerosos objetos. La clase es lo genérico: es el patrón o modelo
para crear objetos. Cada objeto tiene sus propias copias de las variables miembro, con sus propios
valores, en general distintos de los demás objetos de la clase. Las clases pueden tener variables
static, que son propias de la clase y no de cada objeto
Lic. Felipe Rodríguez Ramírez 15/24
Fundamentos de Programación Java

ENTRADA Y SALIDA EN JAVA

Entradas y salidas de datos son las tareas más comunes en cualquier lenguaje de programación. En
Java la entrada y la salida se lee y escribe en flujos (streams). La fuente básica de entrada de datos
es el teclado y la fuente de salida de datos es la pantalla. La clase System define dos referencias a
objetos static para la gestion de la entrada y la salida por consola:

System.in para entrada por el teclado

System.out para salida por pantalla

El primero es una referencia a un objeto de la clase BufferedInputStream en la cual hay diversos


métodos para poder captar caracteres tecleados. El segundo es una referencia a un objeto de la
clase PrintStream con métodos como:

print( ) Transfiere una cadena de caracteres al buffer de la pantalla.

println( ) Transfiere una cadena de caracteres y el carácter de fin de línea alal buffer de la pantalla.

Con respecto a la entrada de datos los elementos básicos de este flujo son caracteres individuales,
no cadenas como ocurre con el objeto out. Entre los métodos de la clase se encuentra read( ), que
devuelve el carácter actual en el buffer de entrada.

No resulta practico el captar la entrada carácter a carácter, es preferible hacerlo línea a línea. Para
ello se utilza la clase InputStreamReader, de la que se crea un objeto inicializado con System.in,
este objeto que se crea se utiliza a su vez como argumento para inicalizar otro objeto de la clase
BufferedReader, que ya permite captar líneas de caracteres del teclado con el método readLine ();

En el siguiente ejemplo se muestra la entrada de datos utilizando lo que se ha descrito.

Programa ejemplo:

import java.io.*;
class prog1 {
public static void main(String[] args) throws IOException
{
// declarando variables a usar
int edad = 0;
String nom="";
// creando un objeto llamado teclado especializado en capturas
BufferedReader teclado = new BufferedReader(new InputStreamReader(System.in));
// capturando datos
System.out.println("dame nombre: ");
nom=teclado.readLine();
System.out.println("dame edad: ");
edad = Integer.parseInt(teclado.readLine());
// convirtiendo a meses
Lic. Felipe Rodríguez Ramírez 16/24
Fundamentos de Programación Java
edad =edad * 12;
System.out.println(nom+" tu tienes "+edad +" meses");
} // cierra main
} // cierra clase

En java, generalmente todo se maneja mediante objetos, primero se esta creando un objeto
llamado teclado que tenga capacidad de leer una string, desde el dispositivo de entrada estandar
(teclado o System.in).
Se esta usando la instruccion System.out.println(string); para mandar mensajes al usuario
Se esta usando el metodo readline() que tiene el objeto teclado, para leer la string del teclado
fisico.
Se esta usando Integer.parseInt, , para convertir la string a una variable numérica.

Entrada y Salida con Cuadros de dialogo

// Imprimir varias líneas de texto en un cuadro de diálogo.


// paquetes de Java
import javax.swing.JOptionPane; // el programa usa JOptionPane
public class Bienvenido4 {
// el método main empieza la ejecución de la aplicación de Java
public static void main( String args[] )
{
JOptionPane.showMessageDialog( null, "Bienvenido\na\nla programacion\nen Java!" );
System.exit( 0 ); // terminar la aplicación con la ventana
} // fin del método main
}

Instrucciones de control de programa permiten alterar la secuencia normal de ejecución de un


programa. Estas instrucciones se dividen en tres grandes categorías:
1.- Instrucciones Condicionales que en java se implementan con las instrucciones
• if y switch.
b) Instrucciones de ciclos con
• for
• while
• do...while

INSTRUCCIONES CONDICIONALES JAVA


Una de las mas poderosas características de cualquier computador es la capacidad que tiene de
tomar decisiones.
Es decir al comparar dos alternativas diferentes el computador puede tomar una decisión
basándose en la evaluación que hace de alguna condición.
ejemplo de instrucciones condicionales:

si sueldo > 3000


desplegar rico
si no
desplegar pobre
Fin-si
Lic. Felipe Rodríguez Ramírez 17/24
Fundamentos de Programación Java

si sexo = 'm'
imprime mujer
si no
imprime hombre
Fin-si

De los ejemplos observar que los caminos a seguir por el computador dependerán de la evaluación
que el computador hace con y de la condición.
Todo lenguaje de programación debe tener instrucciones que permitan formar condiciones e
instrucciones que pueden evaluar esas condiciones.

Cuando la computadora evalúa una condición el resultado de esa evaluación solo es evaluado de
dos maneras o la condición es CIERTA o la condición es FALSA.
Esto dependerá del valor que tenga asignado o que se haya capturado para la variable que esta en
la condición, por ejemplo si se capturo 6000 en sueldo en el ejemplo a) entonces el computador
indicaría que la condición es CIERTA pero en otro caso si a la variable sueldo primero se le
asigno un valor de 250 entonces el computador indicaría que la condición es FALSA.
Ya dependiendo del resultado de la evaluación, el computador ejecuta las instrucciones contenidas
en el grupo de cierto o falso respectivamente.
Empezaremos el análisis por la CONDICIÓN.
CONDICIONES SIMPLES JAVA

Una condición simple se define como el conjunto de variables y/o constantes unidas por los
llamados operadores relaciónales.

INSTRUCCIÓN IF JAVA
Es la instrucción condicional mas usada en los diversos lenguajes de programación, su formato
completo y de trabajo en java es:

cargar o asignar la variable de condición;


if (condición)
{ grupo cierto de instrucciones;}
else
{ grupo falso de instrucciones; };
Notas.- Observar donde van y donde no van los puntos y comas;
- La condición va entre paréntesis ;
- Si un if no ocupa un grupo falso de instrucciones entonces no se pone el else, y la llave antes del
else si terminaría con punto y coma.
Ejemplo:
Prog2.java

import java.io.*;
class prog2 {
public static void main(String[] args) {
// declarando variables a usar
int sueldo = 0;
// creando un objeto llamado teclado especializado en capturas
BufferedReader teclado = new BufferedReader(new InputStreamReader(System.in));
Lic. Felipe Rodríguez Ramírez 18/24
Fundamentos de Programación Java
// capturando datos
try {
System.out.println("dame sueldo: ");
sueldo = Integer.parseInt(teclado.readLine());
} catch(IOException variablerror) {System.out.println("error de captura "); }
if (sueldo >= 3000)
{ System.out.println("RICO ");}
else { System.out.println("POBRE"); };
} // cierra main
} // cierra clase

Recordar que es valido usar mas de una instrucción dentro del grupo cierto o falso del if.
Prog3.java: ahora con strings

import java.io.*;
class prog3 {
public static void main(String[] args) {
// declarando variables a usar
String carrera="";
// creando un objeto llamado teclado especializado en capturas
BufferedReader teclado = new BufferedReader(new InputStreamReader(System.in));
// capturando datos
try {
System.out.println("dame carrera: ");
carrera = teclado.readLine();
} catch(IOException variablerror) {System.out.println("error de captura "); }
if ( carrera.compareTo("informatica") == 0 )
{ System.out.println("INTELIGENTE ");}
else
{
System.out.println("NORMAL");
}; // cierra if
} // cierra main
} // cierra clase

TAREAS PROGRAMACION JAVA


1.- Capturar un numero entero cualesquiera e informar si es o no es múltiplo de 4 ( recordar el
operador mod(%), analizado en el tema de operadores aritméticos).
2.- Capturar los cinco datos mas importantes de un Empleado, incluyendo el sueldo diario y los
días trabajados desplegarle su cheque semanal solo si ganó mas de $500.00 en la semana, en caso
contrario desplegarle un bono de despensa semanal de $150.00.
3.- Capturar los datos mas importantes de un estudiante incluyendo tres calificaciones construir
una boleta de calificaciones si el estudiante es de la carrera de medicina, en caso contrario
construir una pantalla mas bonita todavia que despliega un oficio citando a los padres del
estudiante a una platica amistosa con los maestros de la escuela.

CONDICIONES COMPUESTAS JAVA

Lic. Felipe Rodríguez Ramírez 19/24


Fundamentos de Programación Java
En muchas ocasiones es necesario presentar mas de una condición para su evaluación al
computador.
Por ejemplo que el computador muestre la boleta de un alumno si este estudia la carrera de
medicina y su promedio de calificaciones es mayor de 70.
Una condición compuesta se define como dos o mas condiciones simples unidas por los llamados
operadores lógicos.
Los operadores lógicos que java reconoce son;
OPERADOR SIGNIFICADO

&& "Y" LOGICO

|| "O" LOGICO

! "NO" NEGACION
Ejemplo:
if ( (sueldo > 1000 ) && ( sexo=='m') ) etc, etc, etc.
Notas:
Observar que cada condición simple lleva sus propios parentesis.
Si la variable es de tipo string el dato va entre comillas("), pero si la variable es de tipo char el
dato va entre apostrofes(').
Para que el computador evalúe como CIERTA una condición compuesta que contiene el operador
lógico "&&", las dos condiciones simples deben ser ciertas.
Para que el computador evalúe como CIERTA una condición compuesta que contiene el operador
lógico "||", basta con que una de las condiciones simples sea cierta. La cantidad total de casos
posibles cuando se unen dos o mas condiciones simples esta dada por la relación donde n =
cantidad de condiciones, la primera mitad de ellos empieza en cierto y la segunda mitad en falso.
Ejemplo, si formamos una condición compuesta con dos condiciones simples y el operador lógico
"y", la cantidad total de casos posibles serian , y se puede construir la siguiente tabla de
verdad.
Tabla de verdad con "y"
CONDICION1 CONDICION2 CONDICION1 Y CONDICION2

C C C

C F F

F C F

F F F

La evaluación final, se obtiene usando la regla anteriormente descrita para una condición
compuesta, que contiene el operador "Y".
Esta tabla significa lo siguiente;
1.- Cualquiera que sean la cantidad de datos procesados, siempre caerá en uno de estos cuatro
casos generales.
La tabla de verdad para una condición compuesta con "Or" es la siguiente;
Lic. Felipe Rodríguez Ramírez 20/24
Fundamentos de Programación Java

CONDICION1 CONDICION2 CONDICION1 OR CONDICION2

C C C

C F C

F C C

F F F
Construir una tabla de verdad para una condición compuesta de tres o mas condiciones simples, es
también tarea sencilla, solo recordar que;
1.- La cantidad posible de casos es 2^n casos posibles, la mitad empiezan con Cierto y la otra
mitad empiezan con Falso.
2.- Para evaluar esta condición triple primero se evalúan las dos primeras incluyendo su operador
bajo las reglas ya descritas y luego se evalúa el resultado parcial contra la ultima condición y
ultimo operador para obtener la evaluación final.

TAREAS PROGRAMACION JAVA


1.- Construir un programa que capture un numero cualesquiera e informe si es o no es mayor de
50 y múltiplo de tres. ( solo escribir el mensaje de respuesta de manera muy clara y esto resuelve
el problema )
3.- Capturar los datos de un producto incluyendo su cantidad en existencia, desplegar una orden de
compra si la cantidad en existencia del producto es menor que el punto de reorden, o si el origen
del producto es nacional.
4.- Construir un programa que capture los datos de un empleado, desplegar su cheque semanal si
gana mas de $500.00 y si esta en el departamento de producción, en caso contrario desplegarle un
bono de despensa del 25% de su sueldo semanal

INSTRUCCIÓN SWITCH
También existen ocasiones o programas donde se exige evaluar muchas condiciones a la vez, en
estos casos o se usa una condición compuesta muy grande o se debe intentar convertir el problema
a uno que se pueda resolver usando la instrucción SWITCH.
Esta instrucción es una instrucción de decisión múltiple donde el compilador prueba o busca el
valor contenido en una variable ENTERA o CHARACTER contra una lista de constantes
apropiadas, es decir enteras, character, cuando el computador encuentra el valor de igualdad entre
variable y constante entonces ejecuta el grupo de instrucciones asociados a dicha constante, si no
encuentra el valor de igualdad entre variable y constante, entonces ejecuta un grupo de
instrucciones asociados a un default, aunque este ultimo es opcional.
El formato de esta instrucción es el siguiente;

switch(var OPCION)
{
case const1: instrucción(es);
break;
case const2: instrucción(es);
break;
case const3: instrucción(es);
break; ..................
Lic. Felipe Rodríguez Ramírez 21/24
Fundamentos de Programación Java
default: instrucción(es);
}

prog4.java

import java.io.*;
class prog4 {
public static void main(String[] args) {
// declarando variables a usar
char letra=' ';
// creando un objeto llamado teclado especializado en capturas
BufferedReader teclado = new BufferedReader(new InputStreamReader(System.in));
// capturando datos
try { System.out.println("dame una letra : ");
letra= teclado.readLine().charAt(0);
} catch(IOException variablerror) {System.out.println("error de captura "); }
switch(letra)
{ case 'a':
System.out.println("aguila ");break;
case 'b': case 'B':
System.out.println("becerro ");break;
case 'c':
System.out.println("caballo "); break;
default:
System.out.println("no hay ");
}
} // cierra main
} // cierra clase

CICLO FOR
Este ciclo es uno de los mas usados para repetir una secuencia de instrucciones sobre todo cuando
se conoce la cantidad exacta de veces que se quiere que se ejecute una instrucción simple o
compuesta.

Su formato general es:


for (inicialización; condición; incremento)
{ instrucción(es); };

En su forma simple la inicialización es una instrucción de asignación que carga una variable de
control de ciclo con un valor inicial.
La condición es una expresión relacional que evalúa la variable de control de ciclo contra un valor
final o de parada que determina cuando debe acabar el ciclo.
El incremento define la manera en que la variable de control de ciclo debe cambiar cada vez que el
computador repite un ciclo.
Se deben separar esos 3 argumentos con punto y coma ;

EJEMPLO
Codigo prog7.java

Lic. Felipe Rodríguez Ramírez 22/24


Fundamentos de Programación Java
import java.lang.*;
import java.io.*;
class prog7 {
public static void main(String[] args) {
// ciclo for
for(int x=1; x<=5; x++)
{ System.out.println(x+" MAMA" + '\n'); };
} // cierra main
} // cierra clase

Casos Particulares del ciclo for:


1.- El ciclo comienza en uno y se incrementa de uno en uno este es el caso mas general.
2.- Pero el valor inicial puede se diferente de uno, ejemplo;
for(x=5;x<=15;x=x+1){ etc.};
3.- Incluso el valor inicial puede ser negativo, ejemplo;
for (x = -3 ;x<= 8; x=x+1) { etc.};
4.- Los incrementos también pueden ser diferentes al de uno en uno, ej.;
for (x=1; x<= 20; x=x+3){ etc. };
5.- Incluso pueden ser decrementos, solo que en este caso, recordar;
5.1.-el valor inicial de la variable debe ser mayor que el valor final.
5.2.-cambiar el sentido de la condición.
Ejemplo: for (x= 50 ; x >= 10; x= x-4 ) { etcétera };

CICLO WHILE JAVA


En este ciclo el cuerpo de instrucciones se ejecuta mientras una condición permanezca como
verdadera en el momento en que la condición se convierte en falsa el ciclo termina.
Su formato general es :
cargar o inicializar variable de condición;
while(condición)
{
grupo cierto de instrucciones;
instrucción(es) para salir del ciclo;
};
Un error muy comun con el while, es poner un punto y coma(;) despues de la (condición) ejemplo
while(condicion); <--esto es y causa un error.
Prog8.java

import java.lang.*;
import java.io.*;
class prog8 {
public static void main(String[] args) {
// ciclo for
int x=1;
while ( x<=5 )
{
System.out.println(x+" PAPA" + '\n');
x++; };
} // cierra main
Lic. Felipe Rodríguez Ramírez 23/24
Fundamentos de Programación Java
} // cierra clase

While puede llevar dos condiciones en este caso inicializar 2 variables de condición y cuidar que
existan 2 de rompimiento o terminación de ciclo. El grupo cierto de instrucciones puede ser una
sola instrucción o todo un grupo de instrucciones. La condición puede ser simple o compuesta.
Los casos generales de for tambien se aplican a while. A este ciclo también se le conoce también
como ciclo de condición de entrada o prueba por arriba porque este ciclo evalúa primero la
condición y posteriormente ejecuta las instrucciones.

CICLO DO WHILE JAVA


Su diferencia básica con el ciclo while es que la prueba de condición es hecha al finalizar el ciclo,
es decir las instrucciones se ejecutan cuando menos una vez porque primero ejecuta las
instrucciones y al final evalúa la condición. También se le conoce por esta razón como ciclo de
condición de salida.
Su formato general es :
cargar o inicializar variable de condición;
do {
grupo cierto de instrucción(es);
instrucción(es) de rompimiento de ciclo;
} while (condición);

prog9.java

import java.io.*;
class prog9 {
public static void main(String[] args) {
// ciclo for
int x=1;
do
{
System.out.println(x+" HIJO" + '\n');
x++; } while (x<=5) ;
} // cierra main
} // cierra clase

Otra diferencia básica con el ciclo while es que, aunque la condición sea falsa desde un principio
el cuerpo de instrucciones se ejecutara por lo menos una vez.

CONCLUSIONES ACERCA DE CICLOS JAVA


Dado un problema cualquiera cual ciclo se debe usar:
Si se conoce la cantidad exacta de veces que se quiere que se ejecute el ciclo o si el programa de
alguna manera puede calcularla usar for.
Si se desconoce la cantidad de veces a repetir el ciclo o se quiere mayor control sobre la salida o
terminación del mismo entonces usar while.
Si se quiere que al menos una vez se ejecute el ciclo entonces usar do while.

Lic. Felipe Rodríguez Ramírez 24/24

Vous aimerez peut-être aussi