Estou com o problema na inicialização dos seguintes arrays
String[] produto = new String[JOptionPane.showInputDialog(“Produto:”)];
Double[] preco = new Double[Double.parseDouble(JOptionPane.showInputDialog(“Preço:”))];
aparece a mensagem Type mismatch: cannot convert from String to int
Se alguém puder me ajudar, gostaria de entender o que estou fazendo de errado?
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class Exemplo3 {
public static void main(String[] args) {
JTextArea area = new JTextArea(10, 20);
area.setEditable(false);
JScrollPane barra = new JScrollPane(area);
// as duas linhas a seguir apresentam problemas String[]... e Double[]....
String[] produto = new String[JOptionPane.showInputDialog("Produto:")];
Double[] preco = new Double[Double.parseDouble(JOptionPane.showInputDialog("Preço:"))];
criaVetor(produto, preco);
listaVetor(produto, preco, area);
JOptionPane.showMessageDialog(null, barra);
System.exit(0);
}
// método para criar os vetores
public static void criaVetor(String[] produto, Double[] preco) {
for (int i = 0; i < produto.length; i++) {
produto[i] = JOptionPane.showInputDialog("Produto: ");
}
for (int i = 0; i < preco.length; i++) {
preco[i] = Double.parseDouble(JOptionPane
.showInputDialog("Preço: "));
}
}
// método para listar os vetores
public static void listaVetor(String[] produto, Double[] preco, JTextArea ar) {
for (int i = 0; i < produto.length; i++) {
ar.append("Produto: " + produto[i]);
}
for (int i = 0; i < preco.length; i++) {
ar.append("Preço: " + preco[i]);
}
for (int i = 0; i < preco.length; i++) {
ar.append("Preço com desconto de 5%: " + precDesc(preco[i]));
}
}
// método desconto recebe o preço como parâmetro e retorna o valor com o
// desconto de 5%
public static double precDesc(double preco) {
return (preco * 0.95);
}
}