// Programa: VentaSimple.java
package ventasimple;
import java.util.Scanner;
// Los datos de un producto cualquiera
final class producto
{
public int codigo; // Código del producto.
public int cantidad; // Cantidad del producto.
public float precio; // Precio unitario del producto.
public producto()
{
// Se inicializan las variables a cero.
codigo = 0;
cantidad = 0;
precio = 0.0f;
}
}
public class VentaSimple
{
public static void main(String[] args)
{
// Cantidad de productos a ingresar desde teclado.
int nelems = 3;
// Define a 'dato' como un arreglo o vector de 'nelems' de 'producto'.
producto[] dato = new producto[nelems];
Scanner scanf = new Scanner(System.in);
// Inicializa cada posición del vector-clase dato.
for(int k = 0; k < dato.length; k++)
dato[k] = new producto();
System.out.printf("< Solicitud de ingreso de datos a vector-clase: %d >\n", nelems);
for(int i = 0; i < nelems; i++)
{
System.out.printf("\nProducto nro.: %d\n", i+1);
System.out.printf("ingrese código: ");
dato[i].codigo = scanf.nextInt();
System.out.printf("ingrese cantidad: ");
dato[i].cantidad = scanf.nextInt();
System.out.printf("ingrese precio: ");
dato[i].precio = scanf.nextFloat();
System.out.println("____________________");
}
System.out.println("\n< Resultados >");
System.out.printf("Código");
for(int i = 0; i < nelems; i++)
System.out.printf(" %d", dato[i].codigo);
System.out.printf("\nCantidad");
for(int i = 0; i < nelems; i++)
System.out.printf(" %d", dato[i].cantidad);
System.out.printf("\nPrecio");
for(int i = 0; i < nelems; i++)
System.out.printf(" %.2f", dato[i].precio);
System.out.printf("\nImporte");
for(int i = 0; i < nelems; i++)
System.out.printf(" %.2f", (dato[i].cantidad * dato[i].precio));
System.out.println();
}
}
Y va tomando forma a un tipo 'registro' como en Pascal o en C/C++.
Referencias: Clases de datos y tipos sellados en Java.
https://cr.openjdk.java.net/~briangoetz/amber/datum_3.html