Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何比较两个不同jtable中的两个整数列,然后通过单击按钮在另一个jtable中打印较大值或较小值?_Java_Netbeans 8.2 - Fatal编程技术网

Java 如何比较两个不同jtable中的两个整数列,然后通过单击按钮在另一个jtable中打印较大值或较小值?

Java 如何比较两个不同jtable中的两个整数列,然后通过单击按钮在另一个jtable中打印较大值或较小值?,java,netbeans-8.2,Java,Netbeans 8.2,我仍在使用java开发带有netbeans ide的库存管理系统。在一个界面中,我有三个不同的JTable,一个用于当前材料库存量,一个用于完成订单所需的材料数量,另一个用于打印库存量大于或小于订单数量。如何比较这两个数量列和打印结果 /*** 这些是迄今为止尝试过的代码 ****/ //全局变量 Vector v=new Vector(); Object listOrder=new Object(); Vector v1=new Vector(); Object listOrder1=new

我仍在使用java开发带有netbeans ide的库存管理系统。在一个界面中,我有三个不同的JTable,一个用于当前材料库存量,一个用于完成订单所需的材料数量,另一个用于打印库存量大于或小于订单数量。如何比较这两个数量列和打印结果

/*** 这些是迄今为止尝试过的代码 ****/

//全局变量

Vector v=new Vector();
Object listOrder=new Object();
Vector v1=new Vector();
Object listOrder1=new Object();
Vector v2=new Vector();
Object listOrder2=new Object();
int tranval[];
int stkval[];
//将数据库值导入表的按钮操作

private void RequiredActionPerformed(java.awt.event.ActionEvent evt) {                                         
    // TODO add your handling code here:
     tranval =new int[20];
     stkval =new int[20];
    try{
        ResultSet rs = new getMatierialDataM().searchItems("SELECT icode,qty from transactiono where oid ='"+jComboBox2_oid.getSelectedItem()+"'");

//define tables 
        DefaultTableModel dtm = (DefaultTableModel)jTable2_required.getModel(); //required materials
        dtm.setRowCount(0);
        Vector v = null;
        DefaultTableModel dtm1 = (DefaultTableModel)jTable1_availability.getModel();
        dtm1.setRowCount(0); //available materials in stock
        Vector v1 =null;

        while(rs.next()){
            String ico=rs.getString("icode");
            String q1=rs.getString("qty");
            int q11=Integer.parseInt(q1);
            ResultSet rs1 = new getMatierialDataM().searchItems("SELECT transactionbom.mid,transactionbom.qty,component.comid,matierial.stockqty from transactionbom,component,matierial where transactionbom.icode ='"+ico+"' AND transactionbom.icode=component.icode AND transactionbom.mid=matierial.mid");
            int len=0;

            while(rs1.next()){
            String q2=rs1.getString("qty");
            int q22=Integer.parseInt(q2);
            int qty =q11*q22;       //calculation 
            String cid,mid,stq;
            cid=rs1.getString("comid");
            mid=rs1.getString("mid");
            stq=rs1.getString("stockqty");

            tranval[len]=qty;
            stkval[len]=q22;
            len++;

        v = new Vector();
            v.add(cid);
            v.add(mid);
            v.add(qty);
            dtm.addRow(v);

        v1 = new Vector();
            v1.add(cid);
            v1.add(mid);
            v1.add(stq);
            dtm1.addRow(v1);
        }
        }
    }
    catch (Exception e) {
        e.printStackTrace();
        //Logger.getLogger(ItemCosting.class.getName()).log(Level.SEVERE, null, e);
    }
}


//button action for compare above two tables and get stock status in third table

private void jButton1_checkActionPerformed(java.awt.event.ActionEvent evt) {                                               
    // TODO add your handling code here:
    DefaultTableModel dtm1 = (DefaultTableModel)jTable1_status.getModel();
    dtm1.setRowCount(0);
    Vector v2 =null;
    int x=0;
    int y=3;
    int len=jTable1_availability.getRowCount();

    v2 = new Vector();
    while(x<len){
        if(tranval[x]>stkval[x]){
            v2.add("mid");
            v2.add("OK");
        }else{
            v2.add("mid");
            v2.add("NO");
        }
        dtm1.addRow(v2);
        tranval[x]++;
        stkval[x]++;
        x++;
    }
}
上述代码在第三个表的所有行中只打印一个相同的结果。
我希望在几行中出现一些“无”状态,但在所有行中都显示为“正常”。

提示:不要使用vector类。使用列表和数组列表。还要了解原始泛型类型以及为什么不应该使用它们。感谢您的帮助,目前我对这些技术一无所知。但我会试试它。我还建议你认真改变命名变量的方式。这些名称有助于人类读者理解源代码的意图。您过度使用一个字符的名称会产生完全相反的效果,这基本上会使您的代码比应该的难读10倍……提示:不要使用vector类。使用列表和数组列表。还要了解原始泛型类型以及为什么不应该使用它们。感谢您的帮助,目前我对这些技术一无所知。但我会试试它。我还建议你认真改变命名变量的方式。这些名称有助于人类读者理解源代码的意图。你过度使用一个字符的名字,结果正好相反,它基本上使你的代码比它应该的难读10倍。。。