public class Entrega {
private int identificador;
private String origem;
private String destino;
private String conteudo;
private int prioridade; // 1 (= mais baixa)
// até 10 (= mais alta)
private double peso; //em kg
private double preço;
//construtor da classe Entrega
public Entrega(int identificador, String origem, String destino, String
conteudo, int prioridade, double peso){
this.identificador = identificador;
this.origem = origem;
this.destino = destino;
this.conteudo = conteudo;
this.prioridade = prioridade;
this.peso = peso;
this.preço = -1; //o valor -1 indica que o
//preço não foi calculado
}
public int getIdentificador(){
return identificador;
}
public String getOrigem(){
return origem;
}
public String getDestino(){
return destino;
}
public String getConteudo(){
return conteudo;
}
public int getPrioridade(){
return prioridade;
}
public double getPeso(){
return peso;
}
public double getPreço(){
return preço;
}
public void setPreço(double p){
this.preço = p;
}
}
/*
31) Uma empresa de entregas decidiu contratar alguns alunos da USJT para estágio. Ela precisará implementar um
sistema para administrar melhor seu serviço. O analista da empresa propõe as duas classes acima, como parte do
processo de análise do problema. A classe AdmEntregas mantém um ArrayList para armazenar todos os objetos da
classe Entrega. Com base no código Java apresentado a seguir, implemente os métodos da classe AdmEntregas:
*/
import javax.swing.*;
import java.util.ArrayList;
public class AdmEntregas {
private ArrayList listaEntregas;
public AdmEntregas()
{
listaEntregas = new ArrayList();
}
public void novaEntrega (Entrega e){
listaEntregas.add (e);
}
public void darBaixaEntrega (int id){
// darBaixaEntrega - este método remove do ArrayList listaEntregas o objeto correspondente à entrega com
//determinado identificador.
int i = 0 ;
while ( i < listaEntregas.size () ) {
Entrega obj = ( Entrega) listaEntregas.get(i);
if (obj.getIdentificador() == id ) {
listaEntregas.remove(id);
JOptionPane.showMessageDialog ( null," produto removido com sucesso ");
}
else {
JOptionPane.showMessageDialog ( null," produto não existe ");
}
i++ ;
}
}
public void calcularPreços (){
/***calcularPreços - calcula os preços de todas as entregas presentes na listaEntregas, que ainda não
foram calculados (ou seja, calcula aqueles preços que ainda estão com valor -1 da sua inicialização). A maneira de
calcular um preço é a seguinte: 10 * peso * prioridade. Assim, uma entrega com peso 0,200 kg e prioridade 6, terá um
preço de 10 * 0,2 * 6 = R$ 12,00.
*/ int i = 0 ;
while ( i < listaEntregas.size () ) {
Entrega obj = ( Entrega) listaEntregas.get(i);
if ( obj.getPreço()== - 1 ) {
obj.setPreço ( 10.0 * obj.getPeso() * obj.getPrioridade() );
listaEntregas.set( i , obj );
}
i++;
}
}
public void listarEntregasCaras (){
int i = 0 ;
while ( i < listaEntregas.size () ) {
Entrega obj = ( Entrega) listaEntregas.get(i);
if (obj.getPreço () >= 1.000) {
System.out.println("Identificador: " + obj.getIdentificador());
System.out.println("Origem:: " + obj.getOrigem());
System.out.println("Destino: " + obj.getDestino());
System.out.println("Conteúdo: " + obj.getConteudo());
System.out.println("Prioridade: " + obj.getPrioridade());
System.out.println("Peso: " + obj.getPeso());
System.out.println("Preço: " + obj.getPreço());
}
i ++ ;
}
// listarEntregasCaras - lista todas as entregas armazenadas, com preço maior ou igual a R$ 1.000,00, pois estas
//precisarão de escolta.
}
public int contarEntregas (String dest){
int i = 0 ;
int quantidade =0 ;
while ( i < listaEntregas.size() ) {
Entrega obj = ( Entrega) listaEntregas.get(i);
if ( dest.equals ( obj.getDestino() ) ){
quantidade ++ ;
}
i ++;
}
return quantidade;
// contarEntregas - conta quantas são as entregas a serem feitas para determinado ?destino?.
}
public int entregaMaisPrioritaria (){
int i = 0 ;
Entrega obj = ( Entrega) listaEntregas.get(i);
int indice = 0 ;
int prioridade = obj.getPrioridade ();
while ( i < listaEntregas.size() ) {
if ( obj.getPrioridade() == prioridade ){
indice = i ;
prioridade = obj.getPrioridade();
}
i++ ;
// *entregaMaisPrioritaria - calcula o índice (relativo ao ArrayList) da entrega com maior prioridade.
}
return indice ;
}
}
Olaa pessoas , estou iniciando em java …comoo posso fazer o metodo main ???
para testar essas classes ;;
public static void main ( String [ ] args ){
//
}