Está en la página 1de 42

MÁS SOBRE ARREGLOS

SANTIZO GALICIA JESSICA


 Tienenla misma definición de un Arreglo de
datos Primitivos, estos difieren en la instancia
que poseen

 Se
crean en base a una clase ya existente y
definida con sus atributos y
métodos correspondientes
 Alumno alumnos [];
 alumnos = new Alumno [60];

 Contacto contactos [];


 contactos = new Contacto[30];

¿CÓMO SE DECLARAN?
 alumnos[0] = new Alumno (“Pedro”, 23);

¿CÓMO SE ASIGNA UN VALOR A UNA


POSICIÓN?
 Se desea representar una liga de futbol.
 En la cuál participan un conjunto de Equipos.
 Además se desean hacer algunas operaciones

EJEMPLO
 String nombre;
 String entrenador;
 String estadio;
 int puntos;

¿CÓMO SE REPRESENTA UN EQUIPO?


public class Equipo {
private String nombre;
private String entrenador;
private String estadio;
private int puntos;

public Equipo() {
nombre = “”;
entrenador = “”;
estadio = “”;
puntos = 0;
}
public Equipo(String n, String en, String e, int p){
nombre = n;
entrenador = en;
estadio = e;
establecerPuntos(p);
}
public void establecerNombre(String n){
nombre = n;
}

MÉTODOS MODIFICADORES /SET


public void establecerEntrenador(String e){
entrenador = e;
}
public void establecerEstadio(String e){
estadio = e;
}
public void establecerPuntos(int p){
puntos = (p < 0)? 0:p;
}
public String obtenerEntrenador(){
return entrenador;
}

MÉTODOS DE ACCESO /GET


public String obtenerEstadio(){
return estadio;
}
public int obtenerPuntos(){
return puntos;
}
public String toString (){
String equipo;
equipo = "Nombre del equipo: " + nombre +
"\nEntrenador: " + entrenador +
"\nEstadio: " + estadio + "\nPuntos totales: " + puntos;
return equipo;
}
}
 ¿EN DÓNDE PUEDO GUARDAR A LOS EQUIPOS DE LA LIGA DE
FUTBOL?
 ¿CUÁNTOS EQUIPOS PUEDE CONTENER LA LIGA?

REPRESENTACIÓN DE LA LIGA DE
FUTBOL
public class LigaFutbol {

private Equipo equipo [];


private int cantidad;
public LigaFutbol(int tam){
if(tam < 0){
equipo = new Equipo[4];
cantidad = 4;
}else{
equipo = new Equipo[tam];
cantidad = tam;
}
}
 ¿Qué necesito saber para agregar EQUIPO?

AGREGAR EQUIPO A LA LIGA


public void agregarEquipo(Equipo e, int pos){
if(pos >= 0 && pos < cantidad){
if (equipo[pos] == null){
equipo[pos] = e;
}
}else{
System.out.println("No se agrego el equipo, posicion
no valida");
}
}
public int regresaCantidadEquipos() {
return cantidad;
}
 ¿CUÁL ES EL ENCABEZADO DEL MÉTODO?
 ¿QUÉ VA A REGRESAR EL MÉTODO?

REGRESAR EL PUNTAJE DADO DE UN


EQUIPO DADO SU NOMBRE
public int regresaPuntaje(String nombre){
for (int i = 0; i < cantidad; i++){
Equipo e = equipo[i];

if(nombre.equalsIgnoreCase(e.obtenerNombre())){
return e.obtenerPuntos();
}
}
return -1;
}
MÉTODO PARA OBTENER EL NOMBRE
DE UN ENTRENADOR DADO EL
EQUIPO
public String obtenerNombreEntrenador(Equipo e){
return e.obtenerEntrenador();
}
UN MÉTODO QUE REGRESE EN UNA CADENA
CON EL NOMBRE DE TODOS LOS
ENTRENADORES
public String regresaTodosEntrenadores(){
String entrenadores = "";
for( int i = 0; i < cantidad; i++){
Equipo e = equipo[i];
if (e != null){
entrenadores += e.obtenerEntrenador()+"\n";
}
}
return entrenadores;
}
MÉTODO PARA OBTENER EL NOMBRE DEL
ESTADIO EN EL QUE JUGARÁ EL EQUIPO.
public String obtenerEstadio(Equipo e){
return e.obtenerEstadio();
}
MÉTODO PARA OBTENER EL EQUIPO CON
MÁS PUNTOS EN LA LIGA DE FUTBOL
public Equipo mayor(){
Equipo mayor = equipo[0];
for(int i = 0; i < cantidad; i ++){
Equipo e = equipo[i];
If (e!= null){
if(mayor.obtenerPuntos() < e.obtenerPuntos()){
mayor = e;
}
}
}
return mayor;
}
MÉTODO PARA OBTENER EL EQUIPO CON
MENOS PUNTOS EN LA LIGA DE FUTBOL
public Equipo menor(){
Equipo menor = equipo[0];
for(int i = 1; i < cantidad; i ++){
Equipo e = equipo[i];
if(menor.obtenerPuntos() > e.obtenerPuntos()){
menor = e;
}
}
return menor;
}
DESEO REGRESAR EN UNA CADENA LA
INFORMACIÓN DE TODOS LOS EQUIPOS DE LA
LIGA DE FUTBOL
public String informacion(){
String info = “”;
for(int i = 0; i < cantidad; i ++){
Equipo e = equipo[i];

info+= e.toString();
}
return info;
}
MÉTODO PARA OBTENER EL NOMBRE DEL EQUIPO
QUE TIENE LA CANTIDAD DE PUNTOS P
public String regresaNombreEquipo(int p){
String equipos = "";
for (int i = 0; i < cantidad ; i++){
Equipo e = equipo[i];
if(p == e.obtenerPuntos()){
equipos += e.obtenerNombre() + "\n";
}
}
return equipos;
}
PROBAR EL PROGRAMA
 ************************************
 M E N U
 -Probando los diversos métodos
 [0] SALIR
 [1] Agregar equipos a la liga
 [2] Mostrar la puntuación de un equipo
 [3] Mostrar a todos los entrenadores
 [4] Mostrar el entrenador de un equipo
 [5] Mostrar el estadio de un equipo
 [6] Mostrar el equipo con mas puntos
 [7] Mostrar el equipo con menos puntos
 [8] Muestra el equipo dada la puntuación
 [9] Muestra la cantidad de equipos de la liga

 ************************************
 import java.util.Scanner;
 public class PruebaFutbol{
 static final int SALIR = 0;
 static final int AGREGAR = 1;
 static final int PUNTUACION = 2;
 static final int ENTRENADORES = 3;
 static final int ENTRENADOR = 4;
 static final int ESTADIO = 5;
 static final int MAS_PUNTOS = 6;
 static final int MENOS_PUNTOS = 7;
 static final int EQUI_PUNTUA = 8;
 static final int EQUIPOS = 9;

 static Scanner teclado = new Scanner(System.in);
 static int pos = 3;
 static LigaFutbol liga = new LigaFutbol(pos);
 VISUALIZAR LA CLASE DE PRUEBA EN EL CÓDIGO

También podría gustarte