Archive for Programacion

Programacion en Java: Arrays Bidimensionales

Arreglos ARRAYS – MATRICES

Grupo de variables con el mismo nombre y tipo. La manera de referirse a cada uno de los elementos de una matriz es mediante su índice. Los tipos de la matrices son los mismos que el de las variables. Tenemos 2 tipos de array, unidimensional y bidimensional.

UNIDIMENSIONALES:

tipo nombre_array[]=new tipo[nº];

tipo nombre_array[]={valores};

BIDIMENSIONALES:

tipo nombre_array[][]=new tipo[nº][nº];

tipo nombre_array[][]={valores};

Los arrays de Java (vectores, matrices, hiper-matrices de más de dos dimensiones) se tratan como objetos de una clase predefinida. Los arrays son objetos, pero con algunas características propias.

Los arrays pueden ser asignados a objetos de la clase Object y los métodos de Object pueden ser utilizados con arrays.

Inicialización de arrays:

1. Se pueden inicializar con valores entre llaves {…} separados por comas.

2. También los arrays de objetos se pueden inicializar con varias llamadas a new dentro de unas llaves {…}.

3. Si se igualan dos referencias a un array no se copia el array, sino que se tiene un array con dos nombres, apuntando al mismo y único objeto.

4. Creación del array con el operador new:

x = new double[100];

5. Se pueden unir en una sola:

double[] x = new double[100];

Arrays bidimensionales

Los arrays bidimensionales de Java se crean de un modo muy similar al de C++ (con reserva dinámica de memoria).

En Java una matriz es un vector de vectores fila, o más en concreto un vector de referencias a los vectores fila. Con este esquema, cada fila podría tener un número de elementos diferente.

Una matriz se puede crear directamente en la forma:

int [][] mat = new int[3][4];

o bien se puede crear de modo dinámico dando los siguientes pasos:

1. Crear la referencia indicando con un doble corchete que es una referencia a matriz,

int[][] mat;

2. Crear el vector de referencias a las filas,

mat = new int[nfilas][];

3. Reservar memoria para los vectores correspondientes a las filas,

for (int i=0; i<nfilas; i++);

mat[i] = new int[ncols];

A continuación se presentan algunos ejemplos de creación de arrays bidimensionales:

// crear una matriz 3×3

// se inicializan a cero

double mat[][] = new double[3][3];

int [][] b = {{1, 2, 3}, {4, 5, 6}, // esta coma es permitida

};

int c = new[3][]; // se crea el array de referencias a arrays

c[0] = new int[5];

c[1] = new int[4];

c[2] = new int[8];

En el caso de una matriz b, b.length es el número de filas y b[0].length es el número de columnas (de la fila 0).

Porgramacion en Java: Palabras Reservadas_Continue

Nombres de Variables

Los nombres de variables en Java se pueden crear con mucha libertad. Pueden ser cualquier conjunto de caracteres numéricos y alfanuméricos, sin algunos caracteres especiales utilizados por Java como operadores o separadores ( ,.+-*/ etc.).

Existe 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

CONTINUE ES UNA DE ELLAS.

La sentencia continue lo que hace es ignorar las sentencias que tiene el bucle y saltar directamente a la condición para ver si sigue siendo verdadera, si es así sigue dentro del bucle, en caso contrario saldría directamente de el.

Se puede utiliza la sentencia continue dentro de un bucle para saltar de la sentencia actual hacia el principio del bucle o a una sentencia etiquetada.

Considera esta implementación del método indexOf() de la clase String que utiliza la forma de continue que continúa en una sentencia etiquetada.

Ejemplo1:

public int indexOf(String str, int fromIndex) {

char[] v1 = value;

char[] v2 = str.value;

int max = offset + (count – str.count);

test.

for (int i = offset + ((fromIndex < 0) ? 0 : fromIndex); i <= max ; i++) {

int n = str.count;

int j = i;

int k = str.offset;

while (n– != 0) {

if (v1[j++] != v2[k++]) {

continue test;

}

}

return i – offset;

}

return -1;

}

Nota: Sólo se puede llamar a la sentencia continue desde dentro de un bucle

Programacion en Java: Argumentos del Main

El método main recibe un arreglo de Strings como único argumento. Este es un vector de cadenas de caracteres representa que los parámetros opcionales que le podemos pasar por la línea de comando. En el ejemplo de arriba no se usaron argumentos.

Para introducir valores en aplicaciones que trabajan bajo MS-DOS se utiliza el argumento (matriz de String) de la función main. Estos valores se introducción a la hora de ejecutar el programa, es decir, desde el prompt de MS-DOS. Hay que tener en cuenta que estos valores serán siempre de tipo String y si queremos realizar operaciones matemáticas deberemos transformar a valor numérico.

Ejemplo1:

class nombre{

public static void main(String clientes[ ]){

System.out.println(“Hola “ +clientes[0]);

System.out.println(“Hola “ +clientes[1]);

}

}

A la hora de ejecutar :        c:\>java nombre Pepe Antonio

—————————————————-

Ejemplo 2:

import java.util.Date;
 
    class FechaApp {
        public static void main( String args[] ) {
            Date hoy = new Date();
            System.out.println( hoy );
            }
        }

Este método, main(), es el cerebro de cualquier aplicación Java. Cuando se ejecuta una aplicación Java utilizando el intérprete Java, se debe especificar el nombre de la clase que se desea ejecutar. El intérprete entonces, invoca al método main() definido dentro de esa clase, que debe controlar el flujo del programa, pedir al sistema los recursos que necesite y ejecutar cualquier otro método necesario para completar la funcionalidad de la aplicación.

La definición del método main() debe estar precedida por tres modificadores:

  • public indica que el método main() puede ser llamado por cualquier objeto
  • static indica que el método main() es un método estático, es decir, un método propio de la clase
  • void indica que el método main() no devolverá ningún valor

Introduccion a Java

INTRODUCCIÓN A JAVA

Java surgió en 1991 cuando un grupo de ingenieros de Sun Microsystems trataron de diseñar un nuevo lenguaje de programación destinado a electrodomésticos. La reducida potencia de cálculo y memoria de los electrodomésticos llevó a desarrollar un lenguaje sencillo capaz de generar código de tamaño muy reducido.


¿Qué es Java?

Java es una herramienta de programación (como C, C++, BASIC, Pascal o Logo) que sirve para crear aplicaciones informáticas.

Características de Java

· Simple

· Distribuido

· Robusto

· Seguro

· Portable

· Arquitectura Neutral

· Rendimiento medio

· Multithread

· Orientado a Objetos

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(tm) Development Kit (JDK). Se trata de un conjunto de programas y librerías que permiten desarrollar, compilar y ejecutar programas en Java.

Incorpora además la posibilidad de ejecutar parcialmente el programa, deteniendo la ejecución en el punto deseado y estudiando en cada momento el valor de cada una de las variables (con el denominado Debugger). 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. Existe también una versión reducida del JDK, denominada JRE (Java Runtime Environment) destinada únicamente a ejecutar código Java (no permite compilar).

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 ficheros fuente de Java (con extensión *.java). Si no encuentra errores en el código genera los ficheros 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. Se aconseja consultar la documentación de la versión del JDK utilizada para obtener una información detallada de las distintas posibilidades.

JDK en sistemas Windows

En los sistemas Windows sus variables de entorno son

  • JAVAPATH: es un path completo del directorio donde esta instalado el JDK.
  • CLASSPATH: son las librerias o clases de usuario.
  • PATH: variable donde se agrega la ubicación de JDK

Básicamente, el JDK consiste de:

· el compilador Java, javac

· el intérprete Java, java

· un visualizador de applets, appletviewer

· el debugger Java, jdb (que para trabajar necesita conectarse al server de Sun)

· el generador de documentación, javadoc

Máquina virtual Java

La existencia de distintos tipos de procesadores y ordenadores llevó a los ingenieros de Sun a la conclusión de que era muy importante conseguir un software que no dependiera del tipo de procesador utilizado. Se planteó la necesidad de conseguir un código capaz de ejecutarse en cualquier tipo de máquina. Una vez compilado no debería ser necesaria ninguna modificación por el hecho de cambiar de procesador o de ejecutarlo en otra máquina. La clave consistió en desarrollar un código “neutro” el cual estuviera preparado para ser ejecutado sobre una “máquina hipotética o virtual”, denominada Java Virtual Machine

(JVM). Es esta JVM quien interpreta este código neutro convirtiéndolo a código particular de la CPU utilizada. Se evita tener que realizar un programa diferente para cada CPU o plataforma.

La JVM es el intérprete de Java. Ejecuta los “bytecodes” (ficheros compilados con extensión *.class) creados por el compilador de Java (javac.exe). Tiene numerosas opciones entre las que destaca la posibilidad de utilizar el denominado JIT (Just-In-Time Compiler), que puede mejorar entre 10 y 20 veces la velocidad de ejecución de un programa.

Variables y Tipos de Datos

· Enteros

· Reales

o Float

o Double

· Char-Caracteres

· Boolean

OPERADORES

Aritméticos

DESCRIPCION

+

Suma

Resta

*

Multiplica

/

Divide

%

Devuelve el resto de una división(residuo mod)

++

Incrementa en 1

Decremento en 1

Relacionales

DESCRIPCION

= =

Igual

!=

Distinto

>

Mayor que

<

Menor que

>=

Mayor o igual

<=

Menor o igual

Lógicos

DESCRIPCION

&&

condición Y condición

| |

condición O condición

!

Negación de la condición