Você está na página 1de 28

Introducci

on
Fundamentos del lenguaje Java

Programacion en Java
Pedro Ch
avez Lugo
mailto:pchavezl74@gmail.com

24 de marzo de 2010

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Introducci
on
Definiciones

Fundamentos del lenguaje Java

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Definiciones

Algoritmo
Serie de pasos empleados para resolver un problema, el cual debe
contar con las siguientes caractersticas:
Instruccion inicial
Finito
Instruccion final o repetitiva
Lenguaje de programacion
Un lenguaje de programacion, es una herramienta que permite desarrollar programas para las computadoras. Tal como los programas
de un sistema operativo, el programa de un cliente de correo, el programa de un cliente web, el programa de un compilador e interprete,
etc.

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Definiciones

Programaci
on
La programacion es la implementaci
on de un algoritmo en un lenguaje de programacion resultando un programa.
Pseudocodigo
el pseudocodigo es un lenguaje intermedio entre un lenguaje humano
(natural) y un lenguaje de programacion.

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Definiciones

Proceso de programacion
El proceso de programacion consta de los siguientes pasos:
1

Definici
on del problema

Analisis del problema

Propuesta de soluci
on

Implementacion

Compilaci
on e interpretaci
on

Revision de resultados

Depuraci
on

Documentacion

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Lenguaje Java
Tipos de dato primitivos
En el proceso de programacion, los programadores requieren aplicar
el paso 4 correspondiente a la implementaci
on, para lo cual necesitan
conocer el dominio de representaci
on para la informacion (conjunto
de datos) definida en el paso 1.
Por ejemplo, si el problema se tratase del registro de vehculos para
un estacionamiento, entonces un dato a manejar correspondera al
orden de entrada de cada vehculo. El dominio para este dato implicara solo valores positivos incluyendo al cero.

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Lenguaje Java
Tipos de dato primitivos
Cada lenguaje de programacion define su propio conjunto de tipos
de primitivos (simples), los cuales son utilizados para representar
valores. La gran mayora de los tipos de datos primitivos (int, float,
double, etc.) estan definidos en los registros de las actuales arquitecturas de procesador.

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Lenguaje Java
Tipos de dato primitivos
En particular el lenguaje Java define ocho tipos de datos primitivos,
clasificados en cuatro grupos:
Enteros
(n
umeros enteros
positivos y negativos):
- byte
- short
- int

8-bit (signo).
16-bit (signo).

32-bit (signo).

- long

64-bit (signo).

Caracteres
(Smbolos como letras y
n
umeros):
- char

16-bit Unicode.

Pedro Ch
avez Lugo

Presici
on fraccional
(N
umeros con punto
decimal):
- float
32-bit IEEE 754-1985.

- double
64-bit IEEE 754-1985.

Booleano
(Valores l
ogicos):
- boolean
verdadero (true) o falso (false).

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Enteros
Especificaci
on
Nombre
byte
short
int
long

Tama
no
8
16
32
64

Rango
-128 a +127
-32,768 a +32,767
-2,147,483,648 a +2,147,483,647
-9,223,372,036,854,775,808 a
+9,223,372,036,854,775,807

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Presicion fraccional
Especificaci
on
Nombre
float
double

Tama
no
32
64

Pedro Ch
avez Lugo

Rango
-1.4e-45 a +3.4e+38
-4.9e-324 a +1.8e+308

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Caracteres
Especificaci
on
Nombre
char

Tama
no
16

Rango
\u0000 (0) a \uffff (65535)

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Boolean
Especificaci
on
Nombre
boolean

Tama
no
1

Rango
true (verdadero) o false (falso)

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Variables
Concepto de variable
Una vez que el programador ha seleccionado los tipos de datos primitivos que seran utilizados, necesita entonces definir a las entidades
que manejaran a tales valores de cada tipo de dato. Para lo cual es
necesario declarar variables.
Una variable se definir
a como una localidad definida en memoria y
deben tener asociado un identificador.

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Variables
Identificador
Un identificador consiste de un car
acter o una cadena de caracteres
que corresponde al nombre asociado a una variable. Todo lenguaje de
programacion define su propio conjunto de reglas para la generacion
de identificadores:
- Debe iniciar con una letra may
uscula o min
uscula.
- Se pueden utilizar n
umeros pero al principio.
- Los smbolos especiales no deben ser empleados en los identificadores.
- Las palabras reservadas del lenguaje no deben ser empleados como
identificadores.
- El car
acter

es considerado como una letra.

- Existe distinci
on entre may
usculas y min
usculas.

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Declaracion de variables
Para declarar variables en un programa utilizando a un cierto lenguaje de programacion:
1

Seleccionar el tipo de dato que maneje al dominio correcto

Construir identificadores que cumplan con las reglas de


generacion

Sintaxis empleada:
- Tipo de dato identificador de variable

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Declaracion de variables
Declaraci
on de una sola variable:
- double a;
Declaraci
on de varias variables de un mismo tipo de dato:
- double a,b, c;
Los caracteres , y ; corresponden a smbolos especiales que tienen
asociado el significado de separaci
on de identificadores y fin de instruccion respectivamente.

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Declaracion y asignacion valores en variables enteras


Ejemplo
byte
byte a,b;
byte a=-128,b=127;

short
short c,d;
short c=34,d=-62;

Pedro Ch
avez Lugo

int
int
int
int
int

e,f;
e=-3256,f=678;
e=032 (octal)
f=0x1a (hexadecimal)

Programaci
on en Java

long
long g,h
long g=12,h=-45

Introducci
on
Fundamentos del lenguaje Java

Declaracion y asignacion valores en variables flotantes y


dobles
Ejemplos
float
float a,b;
float a=-3.1416f,b=3.1416f;

double
double c,d;
double c=-3.5e-12 (-3.5x1012 ),d=3.5e+12 (3.5x10+12 );

El tipo de dato float nunca debe ser utilizado en el manejo de dinero,


para esto se recomienda emplear double.

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Declaracion y asignacion valores en variables boolean


Ejemplos
boolean
boolean a,b;
int f=20;
boolean g = f>10 (true);

Pedro Ch
avez Lugo

boolean a=true, b=false;

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Declaracion y asignacion valores en variables caracter


Ejemplos
char
char a,b,c;

char a=a, b=\u0040(@), c=64 (@);

El estandar Unicode corresponde a la codificacion de caracteres que


intenta facilitar la transmisi
on y visualizaci
on de textos en m
ultiples
lenguajes y disciplinas tecnicas.

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Programa de ejemplo en Java


class datos{
public static void main(String args[])
{
byte a=127, b=-128;
long c=1;
float d=-3.1416f, e=3.1416f;
double f=1e3, g=3.320202020200200202;
char h=a, i=\u0040,j=64;
boolean k=true, l=a>0;
System.out.println("byte a = "+a+" b = "+b);
System.out.println("long c = "+c);
System.out.println("float d = "+d+" e = "+e);
System.out.println("double f = "+f+" g = "+g);
System.out.println("char h = "+h+" i = "+i+" j = "+j);
System.out.println("boolean k = "+k+" l = "+l);
}
}
Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Lenguaje Java
Comentarios
Existen tres tipos de comentarios definidos por Java:
- Comentario de una sola lnea (//).
- Comentario de m
ultiples lneas (/* */).
- Comentario de documentaci
on (/** */ y etiquetas).

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Operadores
Aritmeticos
Operador
+
*
/
%

Significado
Adici
on
Sustraccion
Multiplicaci
on
Division
Modulo

- La division entera entre


cero es una excepci
on.
- La division punto
flotante entre cero
genera infinito o NAN
(Not A Number).

Abreviacion de operadores aritmeticos y el operador asignacion:


Expresi
on Equivalencia
Expresi
on Equivalencia
x+=4
x=x+4
x/=4
x=x/4
x-=4
x=x-4
x %=4
x=x %4
x*=4
x=x*4

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Operadores
Postfijo y Prefijo:
Auto Incremento y
decremento
Operador
++
-int
int
int
int

Significado
Adiciona 1
Sustrae 1

n++, n- - (auto
incremento y
decremento postfijo).
post-incremento
++n, - -n (auto
incremento y
decremento prefijo).
pre-incremento

m=7;
n=7;
a = 2 * ++m; (a es 16 y m es 8)
b = 2 * n++; (b es 14 y n es 8)

Pedro Ch
avez Lugo

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Operadores
Relacionales
Operador
==
!=
<, <=
>, >=

Booleanos
Significado
Igual que
Diferente
menor que y
menor o igual que
mayor que y
mayor o igual que

Pedro Ch
avez Lugo

Operador
&&
||
&
|
!

Programaci
on en Java

Significado
Operaci
on AND
Operaci
on OR
AND cortocircuito
OR cortocircuito
Operaci
on NOT

Introducci
on
Fundamentos del lenguaje Java

Parentesis, precedencia y asociatividad de operadores


Parentesis
Cuando escriba una expresi
on que contenga muchos operadores, debe confirmar que las operaciones en la expresi
on se realicen en el orden esperado.
Si no se esta seguro del orden de evaluaci
on en una expresi
on compleja, se
recomienda utilizar parentesis para forzar el orden de evaluacion.
Asociatividad
Operadores
*, /, %
+, <, <=, >, >=
==, !=
=

Asociatividad
izquierda a derecha
izquierda a derecha
izquierda a derecha
izquierda a derecha
derecha a izquierda

Pedro Ch
avez Lugo

b = a*c
x = c+d/a-f
x = (c+d)/(a-f)
x = c+(d/a)-f

Programaci
on en Java

a<b
d != z

Introducci
on
Fundamentos del lenguaje Java

Parentesis, precedencia y asociatividad de operadores


Precedencia
Precedencia
mas alta
()
++
*
+
>
==
&&
||
=

-/
>=
!=

!
%
<

Pedro Ch
avez Lugo

<=

int a,b=6,c=8,d=2,e=4;
a = b+c*d/e-d %2;
boolean i;
i = (a < b) && (c > d) || (e >= 4);

Programaci
on en Java

Introducci
on
Fundamentos del lenguaje Java

Operadores a nivel de bit


Java define varios operadores a nivel de bit que se pueden
enteros, byte, short, int, long y char.
Op
Significado
Operador

NOT a nivel de bit


&=
&
AND a nivel de bit
|=
|
OR a nivel de bit
>>=
>> Desp. der. (valor >> num)
<<=
<< Desp. izq. (valor << num)
a>>=2

a=1, b=a
a=7,b=3
a=7,b=3

b = -2
c=a&b=3
c=a|b=7

Pedro Ch
avez Lugo

a=16
a=16

aplicar a los tipos


Significado
AND y asignaci
on
OR y asignaci
on
Desp. der. y asignaci
on
Desp. der. y asignaci
on
a<<=2

b = a>>1 = 8
b = a<<1 = 32

Programaci
on en Java

Você também pode gostar