【问题标题】:String Comparison not working in Java字符串比较在 Java 中不起作用
【发布时间】:2015-01-12 04:38:33
【问题描述】:

这是我的代码:为什么if ((rs.getString("order_status")) != ordstat) 不起作用?

String sql = "select order_id, order_dt, order_status, prod_name from orders where user_id = '"+user+"'";
try{
s = con.createStatement();
rs = s.executeQuery(sql);
String ordstat = "Pending";
%>
<%
while( rs.next() ){
    if ((rs.getString("order_status")) != ordstat){
%>
<div align="center">
    <table border="1" cellpadding="5">
        <tr>
             <th>Select</th>
            <th>Order ID</th>
            <th>Name</th>
            <th>Date</th>
            <th>Status</th>
        </tr>
            <tr>
             <form action = 'deleteorders' >
                <td><input type="checkbox"/></td>
                <td><%= rs.getString("order_id") %></td>
                <td><%= rs.getString("prod_name") %></td>
                <td><%= rs.getString("order_dt") %></td>
                <td><%= rs.getString("order_status") %></td>

<%
    }
}
%>
          </form>   
                </tr>   
      </table>
      <br>
      <INPUT TYPE=SUBMIT VALUE="CANCEL">
      </div>
<%

}

【问题讨论】:

  • 定义“不工作”。 ordstat 是什么,rs.getString("order_status") 是什么?请显示呈现的 HTML 输出而不是这个。
  • @danronmoon 代码清楚地定义了 ordstat 是什么。
  • @Timmerz 是的,你是对的,现在确实如此。触摸
  • @JavascriptL 这段代码并没有足够的信息。例如,我们甚至不知道 sql 查询中返回了什么。你真的需要用调试器来查看它。

标签: java html mysql jdbc


【解决方案1】:

试试这个,因为这是推荐的做法

if (!(rs.getString("order_status")).equals(ordstat))

注意 == 比较对象的引用,如果您想比较字符串的实际内容,请使用 equals() 函数

【讨论】:

  • 感谢 Ahmed,现在运行良好!
  • @Ahmed 是的,你太棒了!
【解决方案2】:

在 java 中使用相等运算符 ("==") 检查 String 意味着您正在有效地将内存中该 String 对象的地址与另一个 String 对象进行比较。它从不比较字符串的内容。

比较两个字符串总是使用 .equals 方法

String x = "Hello";
String y = "World";

if (x.equals(y)) //if the strings are equals
   System.out.println("Equals");

if (!x.equals(y)) //if the strings are not equal
   System.out.println("Not Equal");

【讨论】:

    猜你喜欢
    • 2011-09-20
    • 2012-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-03
    • 2012-01-22
    • 2017-12-07
    相关资源
    最近更新 更多