Dúvida sobre como criar um vetor com tipos de dados diferentes

Boa noite galera,
Estou com a seguinte dúvida de como criar um vetor de uma “estrutura”, assim como em C agente criava uma estrutura e ia acessando os “campos” deste vetor usando o . ou a -> em caso de ponteiros…
Estou com um exercício pedindo para criar um programa para controlar o estoque e venda de 10 produtos, os produtos devem ter descricao e quantidade…
como faço uma estrutura com esses dois tipos(quantidade e descricao) para controla-las como se fosse um vetor?

Valeu, boa noite!

Crie uma classe:

Public class Estoque {

private String descricao;
private int quantidade;

public Estoque(){}//você pode passar argumentos

//aqui coloca os gets e sets

}

:thumbup:

Isso mesmo, podes usar uma classe. No caso do vetor, ficaria assim:

Estoque e[] = new Estoque[10];

Jah usei vetores com vários tipos de dados, pra guardar temporariamente dados que vem do banco de dados, pra mostrar em uma tabela, usando Vector.

Vector v = new Vector(); v.addElement(rs.getInt(1));//Tipo Inteiro v.addElement(rs.getString(2));//Tipo String v.addElement(rs.getString(3));// Tipo String v.addElement(rs.getString(4));//Tipo String v.addElement(rs.getDouble(5));//Tipo Double v.addElement(nf.format(rs.getDouble(6)));//Tipo Double v.addElement(nf.format(rs.getDouble(7)));//Tipo Double
Vlw, Até+.

[quote=InicianteJavaHenrique]Crie uma classe:

Public class Estoque {

private String descricao;
private int quantidade;

public Estoque(){}//você pode passar argumentos

//aqui coloca os gets e sets

}

:thumbup: [/quote]

[quote=Jo? Paulo Vasconcelos]Boa noite galera,
Estou com a seguinte dúvida de como criar um vetor de uma “estrutura”, assim como em C agente criava uma estrutura e ia acessando os “campos” deste vetor usando o . ou a -> em caso de ponteiros…
Estou com um exercício pedindo para criar um programa para controlar o estoque e venda de 10 produtos, os produtos devem ter descricao e quantidade…
como faço uma estrutura com esses dois tipos(quantidade e descricao) para controla-las como se fosse um vetor?

Valeu, boa noite!
[/quote]

Vamos fazer isso funcionar :slight_smile:

Vamos criar um classe chamada produto:
ela cada produto terá uma descrição e quantidade, vamos deixar de lado o nome.

public class Produto {
    
    private int quantidadeExistente;
    private String descricao;

    public Produto(int quantidadeExistente, String descricao) {
        this.quantidadeExistente = quantidadeExistente;
        this.descricao = descricao;
    }
    
    public boolean venderProduto(int quantidadePraRetirar){
        if(quantidadePraRetirar<=quantidadeExistente){
            quantidadeExistente-= quantidadePraRetirar;
            return true;
        }else{
            return false;
        }
    }
    

    public String getDescricao() {
        return descricao;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public int getQuantidadeExistente() {
        return quantidadeExistente;
    }

    public void setQuantidadeExistente(int quantidadeExistente) {
        this.quantidadeExistente = quantidadeExistente;
    }

}

agora vamos criar uma classe chamada estoque:

import java.util.ArrayList;

public class Estoque {

    private ArrayList<Produto> produtosCadastrados;

    public Estoque() {
        produtosCadastrados = new ArrayList<Produto>();
    }

    public void adicionarProduto(Produto produto) {
        produtosCadastrados.add(produto);
    }

    public Produto getProtudo(int index) {
        return produtosCadastrados.get(index);
    }

    public boolean removeProduto(int index) {
        Produto p = produtosCadastrados.remove(index);
        if (p != null) {
            return true;
        } else {
            return false;
        }
    }

    public boolean removeProduto(Produto produto){
       return produtosCadastrados.remove(produto);
    }
    
}

Explicando o código:

Você tem um produto, que tem quantidade e descrição.

Vc tem um estoque que suporta esses produtos.

Quando você quer vender, você pega um pega um produto x no arrayList criado, e vende passando a quantidade como parâmetro.

O arraylist é um tipo de vector que tem tamanho dinâmico.

Qualquer dúvida, comente aqui ou pesquise :slight_smile:

até mais