更新对象中的字段值

时间:2018-05-13 14:45:32

标签: java

我需要更新我的一个对象内的字段值,只需更新String。该对象位于数组内。但是我将通过在参数中键入对象“regNum”来定位对象。

这是我试过的,当我需要输入列表和对象特定值时,我真的不知道如何使用set()方法。

update Table set column = 'NewValue'
where RowID = 
(select t1.RowID from Table t1
join Table2 t2 on t1.JoinField = t2.JoinField
where t2.SelectValue = 'FooMyBarPlease');

这是存储仪表的整个MeterArchive类,并有一些方法。

public boolean doesNotWork( String regNumInput ){
    for(int i = 0; i < meterList.size(); i++){
        if(regNumInput == meterList.get(i).getRegNum()){
            meterList.set(meterList.get(i).getWorkOrNot(), new String ("No"));
        }
    }
    return true;
}

这是具有您可以添加的特定时钟值的时钟类。

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class MeterArchive
{
// instance variables - replace the example below with your own
ArrayList<Meter> meterList = new ArrayList<Meter>();

public void createClocks(){
    Clock clockOne = new Clock("KH001", "Yes", "ClassRoom005", 0.0);
    meterList.add(clockOne);
    Clock clockTwo = new Clock("KH002", "Yes", "ClassRoom006", 0.0);
    meterList.add(clockTwo);
}

public boolean doesNotWork( String regNumInput ){
    for(int i = 0; i < meterList.size(); i++){
        if(regNumInput == meterList.get(i).getRegNum()){
            meterList.set(meterList.get(i).getWorkOrNot(), new String ("No"));
        }
    }
    return true;
}

public void showAllMeter(){
    for(Meter meter : meterList){
        System.out.println(meter);
    }
}
}

这是超级类,它为不同的仪表提供了更多的通用输入。

public class Clock extends Meter
{

/**
 * Constructor for objects of class Clock
 */
public Clock(String regNum, String workOrNot, String location, double minTime)
{
    // initialise instance variables
    super(regNum, workOrNot, location);
    setMinTime(minTime);

}

//MINNIMUM TIME
public void setMinTime(double minTime){
    this.minTime = minTime;
}

public double getMinTime(){
    return minTime;
}

//EQUALS METHOD --- NOT SURE WHAT IT SHOULD DO... YET!
public boolean equals (Clock other){
    return location.equals(other.location);
}

public String toString(){
    String retur = super.toString() + "regNum: " + regNum +
                                      "Does it work: " + workOrNot +
                                      "Location: " + location +
                                      "Min time value: " + minTime;
    return retur;
}
}

因此,在MeterArchive类中,我想将字段值“workOrNot”从它(最可能是“是”)更改为“否”。我发现set()通常是要走的路,但是在这个程序中我希望用户添加特定的“regNum”,然后该方法将在“workOrNot”字段中更改为“No”。正如我之前所说,我不知道如何定位对象内的特定字段。有人可以解释如何做到这一点?

0 个答案:

没有答案