Semana 7

 Arrays.

Los objetos arregloson estructuras de datos que consisten en elementos de datos relacionados, del mismo tipo. Los arreglos facilitan el procesamiento de grupos de valores relacionados. Los arreglos conservan la misma longitud una vez creados.ArrayList. Los objetos ArrayList son similares a los arreglos, sólo que proporcionan una funcionalidad mejorada, como el ajuste de tamaño dinámico segúnsea necesario para poder alojar una cantidad mayor o menor de elementos.

Un array es una estructura de datos que contiene una
colección de datos del mismo tipo.

Los arrays se utilizan como contenedores para almacenar
datos relacionados.

En los arrays no se pueden mezclar tipos.

El tamaño del array se establece cuando se crea.


Existen dos Tipos


  • Bidimensionales
  • También llamados matrices.

Arreglos

Un arreglo es un grupo de variables (llamadas elementos o componentes) que contienen valores del mismo tipo. Los arreglos son objetos, por lo que se consideran como tipos de referencia. Como veremos pronto, lo que consideramos por lo general como un arreglo es en realidad una referencia a un objeto arreglo en memoria.


Declaración y creación de arreglos

Los objetos arreglo ocupan espacio en memoria. Al igual que los demás objetos, los arreglos se crean con la palabra clave new. Para crear un objeto arreglo, debemos especificar el tipo de cada elemento y el número de elementos que se requieren para el arreglo, como parte de una expresión para crear un arreglo que utiliza la palabra clave new. Dicha expresión devuelve una referencia que puede almacenarse en una variable tipo arreglo. La siguiente declaración y expresión de creación de arreglos crea un objeto arreglo, que contiene 12 elementos int y almacena la referencia del arreglo en la variable c:

int[] c = new int[12];

Esta expresión puede usarse para crear el arreglo que se muestra en la figura 7.1. Al crear un arreglo, cada uno de sus elementos recibe un valor predeterminado (cero para los elementos numéricos de tipos primitivos, false para los elementos boolean y null para las referencias). Como pronto veremos, podemos proporcionar valores iniciales para los elementos no predeterminados al crear un arreglo. 

La creación del arreglo de la figura 7.1 también puede realizarse en dos pasos, como se muestra a continuación:

int[] c; // declara la variable arreglo
c = new int[12]; // crea el arreglo; lo asigna a la variable tipo arreglo

En la declaración, los corchetes que van después del tipo indican que c es una variable que hará referencia a un arreglo (es decir, la variable almacenará una referencia a un arreglo). En la instrucción de asignación, la variable arreglo c recibe la referencia a un nuevo objeto arreglo de 12 elementos int.


Creación e inicialización de un arreglo.
En la aplicación de la figura 7.2 se utiliza la palabra clave new para crear un arreglo de 10 elementos int, los cuales en un principio tienen el valor cero (el valor predeterminado para las variables int). En la línea 9 se declara arreglo, una referencia capaz de referirse a un arreglo de elementos int, y luego se inicializa la variable con una referencia a un objeto arreglo que contiene 10 elementos int. La línea 11 imprime los encabezados de las columnas. La primera columna representa el índice (0 a 9) para cada elemento del arreglo, y la segunda contiene el valor predeterminado (0) de cada elemento del arreglo.

1 // Fig. 7.2: InicArreglo.java
2 // Inicialización de los elementos de un arreglo con valores predeterminados de
       cero.
3
4 public class InicArreglo
5 {
6 public static void main(String[] args)
7 {
8 // declara la variable arreglo y la inicializa con un objeto arreglo
9 int[] arreglo = new int[10]; // crea el objeto arreglo
10
11 System.out.printf(“%s%8s%n”, “Indice”, “Valor”); // encabezados de columnas
12
13 // imprime el valor de cada elemento del arreglo
14 for (int contador = 0; contador < arreglo.length; contador++)
15 System.out.printf(“%5d%8d%n”, contador, arreglo[contador]);
16 }
17 } // fin de la clase InicArreglo


Uso de un inicializador de arreglos.
Usted puede crear un arreglo e inicializar sus elementos con un inicializador de arreglo, que es una lista de expresiones separadas por comas (la cual se conoce también como lista inicializadora) y que está encerrada entre llaves. En este caso, la longitud del arreglo se determina con base en el número de elementos en la lista inicializadora. Por ejemplo, la declaración:

int[] n = { 10, 20, 30, 40, 50 };
Ejemplos.
package ejemplo1.vector;
import java.util.Scanner;
/**
 *
 * @author angel
 */
public class Ejemplo1Vector {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner entrada=new Scanner (System.in);
        int i;
        int[] v=new int[4];
        for(i=0; i<=3; i++){
            System.out.println("Ingrese valor ");
            v[i]=entrada.nextInt();
        }
        //System.out.println("En la posicion 1 almacena "+v[1]);
        //System.out.println("En la posicion 3 almacena "+v[3]);
        
        for(i=3; i>=0; i--){
            System.out.println("En la posicion " +i + " Almacena " +v[i]);
        }
    }
    
}


2:

package ejemplo.pkg5.cilindro.vector;
import java.util.Scanner;
/**
 *
 * @author angel
 */
public class Ejemplo5CilindroVector {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
      Scanner entrada=new Scanner (System.in);    
      int n, i;
      System.out.println("Ingrese cantidad de valores ");
      n=entrada.nextInt();
      double[] p=new double[n];
      double[] d=new double[n];
      double[] r=new double[n];
      double[] h=new double[n];
      for(i=0; i<n; i++){
          System.out.println("Ingrese densidad ");
          d[i]=entrada.nextDouble();
          System.out.println("Ingrese radio ");
          r[i]=entrada.nextDouble();
          System.out.println("Ingrese altura ");
          h[i]=entrada.nextDouble();
        
        }
      for(i=0; i<n; i++){
          p[i]=d[i] * Math.PI * Math.pow(r[i], 2) * h[i];
       }
        System.out.println("Peso del cilindro ");
        for(i=0; i<n; i++){
            System.out.println(p[i]);
        }
    }
}


3:
package ejem3.vector;
import java.util.Scanner;
/**
 *
 * @author angel
 */
public class Ejem3Vector {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner entrada=new Scanner (System.in);
        int i;
        float[] v=new float[4];
        float[] p=new float[4];
        float[] n=new float[4];
        for(i=0; i<4; i++){
            System.out.println("Ingrese valor ");
            v[i]=entrada.nextFloat();
        }
        for (i=0; i<4; i++){
            if(v[i]<0){
                n[i] = v[i];
            }else{
               p[i] = v[i];
           }
        }
        System.out.println("Positivos ");
        for(i=0; i<4; i++){
            System.out.println(p[i]);
        }
        System.out.println("Negativos");
        for(i=0; i<4; i++){
            System.out.println(n[i]);
        }
    }
        
 }
Un Video para que se Pueda entender mejor el Tema


Comentarios

Entradas populares de este blog

Semana No.2

Semana 12

Semana 15