为了账号安全,请及时绑定邮箱和手机立即绑定

匹配的字符串不会在 if else 条件 java 中通过语句

匹配的字符串不会在 if else 条件 java 中通过语句

慕哥6287543 2022-06-04 09:14:40
我正在尝试使用数据库计数验证固定长度的文件计数,当它与计数匹配时,pass 语句不会在 if 语句中执行,但是它将转到 else 语句。任何方向都会被应用。以下是我的代码:static String ubservicesCount = "";    String connectionUrl = "jdbc:sqlserver://"+strpServer+":"+strpPort+";databaseName="+strpDatabase+";IntegratedSecurity=true";                // Declare the JDBC objects.                  Connection con = null;                  Statement stmt = null;                  ResultSet rs = null;                  Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");                  con = DriverManager.getConnection(connectionUrl);                 String SQL = strpQuery5+Qt+ProcessID+Qt;                stmt = con.createStatement();                  rs = stmt.executeQuery(SQL);                  while (rs.next()) {                    ubservicesCount = rs.getString(1);                    System.out.println("UB servicesCount is " +ubservicesCount);                }                String st;                BufferedReader Br = null;                File objFile = new File(strPlanFile+NewFileNmae);                Br = new BufferedReader(new FileReader(objFile));                List<String> list = new ArrayList<String>();                while ((st = Br.readLine()) != null) {                    String arraylist = st;                                  String RcdType = arraylist.substring(0, arraylist.length()-392);                    list.add(RcdType);          执行后,它在我的报告中的 else 语句中打印失败。我调试了哪里可以看到在比较语句中它与计数匹配。我不确定我在这里缺少什么。
查看完整描述

1 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

尝试这个

if(ubservicesCount.trim().toString().equalsIgnoreCase(String.ValueOf(fileCount)))

我认为问题在于您正在使用 .equals 并将字符串对象与 int 进行比较...

IE

boolean java.lang.String.equals(Object anObject)

将此字符串与指定对象进行比较。当且仅当参数不为 null 并且是表示与此对象相同的字符序列的 String 对象时,结果才为真。


查看完整回答
反对 回复 2022-06-04
  • 1 回答
  • 0 关注
  • 85 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号