[英]Print two Arrays in java
我在打印这些数组时遇到问题。 我收到此错误:
bad operand types for binary operator '+'.
不知道我在想什么。 当我只打印第一个时,它可以正常工作,但是当我添加第二个时,则不工作。 我究竟做错了什么? 这是我的代码:
import javax.swing.JOptionPane;
public class testMenu {
public static void main(String[] args) {
String[] rieslingArray = {"Riesling","Dry","Off Dry", "Sweet"};
double[] rieslingPrice = {3.0,4.50,4.00,5.00};
JOptionPane.showMessageDialog(null, rieslingArray + rieslingPrice);
}
}
您正在使用二进制+
运算符。 具体来说,您给它分别提供了String[]
和double[]
类型的两个参数。 这些类型对于+
运算符无效。
您可以尝试使用第二条语句打印第二个数组,或者连接两个数组的字符串表示形式,然后在单个语句中打印该字符串。 以下内容可能对获取数组的字符串表示形式有用: Arrays.toString(array)
。
尝试这个!
String[] rieslingArray = {"Riesling","Dry","Off Dry", "Sweet"};
double[] rieslingPrice = {3.0,4.50,4.00,5.00};
for (int i = 0; i < rieslingArray.length; i++) {
JOptionPane.showMessageDialog(null, rieslingArray[i] + rieslingPrice[i]);
}
也许您在这里的困惑是,您想将数组映射为逐个元素。 由于您只是想在屏幕上显示消息,因此遍历每个数组并获取每个对应的元素就可以了。
import javax.swing.JOptionPane;
public class TestMenu {
public static void main(String[] args) {
String[] rieslingArray = {"Riesling", "Dry", "Off Dry", "Sweet"};
double[] rieslingPrice = {3.0, 4.50, 4.00, 5.00};
StringBuilder messageBuilder = new StringBuilder();
for (int i = 0; i < rieslingArray.length; i++) {
messageBuilder.append(rieslingArray[i] + ": " + rieslingPrice[i] + "\n");
}
String message = messageBuilder.toString();
JOptionPane.showMessageDialog(null, message);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.