Programando en Java
Día 2: arrays, Strings y estructuras de control
de programa
Área de Ingeniería Telemática UPNA
En clases anteriores...
• El compilador y la maquina virtual de java
• Tipos de datos y operaciones
• Usando java como calculadora
• Para realizar cálculos más complejos
• No solo evaluar expresiones sino tomar decisiones y realizar
pasos repetitivos >>> estructuras de control
• No solo datos numéricos simples sino datos con más estructura
>>> colecciones de datos, arrays, cadenas ...
Arrays
• Un numero de variables del mismo tipo con el mismo nombre
• Acceder al elemento i con nombre[i]
int x; // x para guardar enteros
int[] a; // a para guardar array de enteros
a = new int[10]; // construye una zona para guardar 10
valores
a[0]=42;
a[1]=50;
a[6]=12;
a[9]=3;
a[10]=123; // estos daran error en ejecucion
a[20]=123; // por salirse del array
el array sabe su longitud
System.out.println(a.length); // imprime 10
Bucles
• Tareas repetitivas
for ( inicializacion ; condicion ; incremento )
{
hacer lo que sea
}
int i;
for ( i=0 ; i<10 ; i=i+1 ) {
System.out.printf("a[%d]= %d \n",i,a[i]);
}
}
for ( int i=0 ; i<10 ; i++ ) {
System.out.printf("a[%d]= %d \n",i,a[i]);
Ma sobre expresiones
i=3+j;
i=10/3;
i=i*3; i*=3;
i=i+3; i+=3;
i=i+1; i++;
con enteros
i=10/3; division entera
i=10%3; modulo (=resto de 10/3)
devuelven boolean
i>3
i<=3
i==3
i!=3
con bits & | ~
3 & 6 // da 2
3 && 6 // da true
con boolean
v1 && v2 // and
v1 || v2 // or
! v1 // not
i!=3 ! i==3
i<10 && i>3
i==3 || i==2
Mas bucles
while (condicion) {
hacer lo que sea
}
do {
hacer lo que sea
} while (condicion)
int j;
while (j<10) {
System.out.printf("a[%d]= %d \n",j,a[j]);
j+=1;
}
Condiciones
if ( condicion ) {
hacer algo
} else {
hacer otra cosa
}
if ( condicion ) {
hacer algo
} else if (condicion2) {
hacer otra cosa
} else if (condicion2) {
haz esto
} else {
loquesea
}
Tambien en expresion: condicion?v1:v2
m = (a>b)?a:b ;
Elegir entre multiples opciones
switch ( entero o char ) {
case v1:
hacer algo si es v1
break;
case v2:
hacer algo si es v2
break;
case v3:
hacer algo si es v3
break;
default:
hacer algo si era otro
}
Reaccionar a errores en ejecución
• Excepciones
try {
hacer algo
v=a[i];
hacer algo
}
} catch( ArrayIndexOutOfBoundsException e ) {
System.out.printf("fuera del array\n");
Ejemplos
• explicando el homework
• hacer un programa que haga un array de numeros
• hacer un programa que imprima los argumentos
• hacer un programa que lea numeros de los argumentos
• decir algo sobre la igualdad de cadenas y de arrays
aleatorios y calcule su media
Ideas para recordar
• Como hacer bucles
• Como escribir código que dependa de condiciones
• Como hacer números aleatorios
• Como leer los argumentos pasados al programa
Links de descarga
http://lwp-l.com/pdf3886
Comentarios de: Programando en Java Día 2: arrays, Strings y estructuras de control (0)
Comentarios de: Programando en Java Día 2: arrays, Strings y estructuras de control (0)
No hay comentarios