gpt4 book ai didi

java - 显示多个结果数组搜索

转载 作者:行者123 更新时间:2023-11-29 05:59:05 25 4
gpt4 key购买 nike

我正在搜索具有开始日期的记录:[userinput],如果它有任何匹配项,将显示该记录,问题是我的程序的性质是所有匹配项所必需的(可以有多个在同一天)需要以某种方式显示。

这是我目前所拥有的:

     public void searchDay() {
String idInputString = JOptionPane.showInputDialog(null, "Please enter the Date you're searching for:");


try {
for (int i = 0; i < orderID.length; i++) {
if (idInputString.equals(startDate[i])) {

txtOrderID.setText(orderID[i]);
txtOrderForename.setText(customerForename[i]);
txtOrderSurname.setText(customerSurname[i]);

txtOrderAddress1.setText(address1[i]);
txtOrderAddress2.setText(address2[i]);
txtOrderTown.setText(town[i]);
txtOrderCounty.setText(county[i]);
txtOrderPost.setText(postCode[i]);
txtOrderCarModel.setText(carModel[i]);

txtOrderCarReg.setText(carReg[i]);
txtOrderStartDate.setText(startDate[i]);
txtOrderStartTime.setText(startTime[i]);

txtOrderSerial.setText(serialNum[i]);

} else {
JOptionPane.showMessageDialog(null, "Order ID Doesn't Exist", "Error!", JOptionPane.WARNING_MESSAGE);
break;
}

}

} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Order ID Doesn't Exist", "Error!", JOptionPane.WARNING_MESSAGE);
initFields();

}
}

即使输入我知道存在的日期,我也会出错。

我认为问题在于 for 循环。它计算元素的数量,而不是总记录数。

这存储在“numberOfOrdersInArray”整型变量中。

但如果我这样做:

     for (int i = 0; i < numberOfOrdersInArray.length; i++) {

我收到错误“int cannot be dereferenced”

我希望我已经足够好地解释了我的问题,

非常感谢您的帮助。

最佳答案

使用.equals() 进行字符串比较不是 ==== 检查引用,而 .equals() 实际上比较字符串字符。这很重要。

编辑:

//instead of a count, you could also use a boolean
for (int i = 0, count= 0; i < orderID.length; i++) {
if (idInputString.equals(startDate[i])) {

txtOrderID.setText(orderID[i]);
txtOrderForename.setText(customerForename[i]);
txtOrderSurname.setText(customerSurname[i]);

txtOrderAddress1.setText(address1[i]);
txtOrderAddress2.setText(address2[i]);
txtOrderTown.setText(town[i]);
txtOrderCounty.setText(county[i]);
txtOrderPost.setText(postCode[i]);
txtOrderCarModel.setText(carModel[i]);

txtOrderCarReg.setText(carReg[i]);
txtOrderStartDate.setText(startDate[i]);
txtOrderStartTime.setText(startTime[i]);

txtOrderSerial.setText(serialNum[i]);
count++;
}
if(i == orderID.length - 1 && count==0){
JOptionPane.showMessageDialog(null, "Order ID Doesn't Exist", "Error!", JOptionPane.WARNING_MESSAGE);
break;
}

}

关于java - 显示多个结果数组搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10850880/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com