У меня есть метод, чтобы вычесть два значения из двух разных списка, которые имеют класс type.The кода для вычитанияКак отлито из объекта типа класса двойного типа в Java
public LinkedHashMap<String, List<Double>> diff()
{
List<Double> z=new ArrayList<Double>();
for(int i=0;i<st_jsp.size()&&i<ref_jsp.size();i++){
Double x=(double) ref_jsp.get(i);
Double y=st_jsp.get(i);
if(x>y){
z.add(x-y);
}
else{
z.add(y-x);
}
dif.put("", z);
}
return dif;
}
Здесь st_jsp и ref_jsp является два списка, такие как List<Ref_user_interface> st_jsp=new ArrayList<Ref_user_interface>();
и List<Ref_user_interface> st_jsp=new ArrayList<Ref_user_interface>();
Ref_user_interface - это мое имя класса. Thses два список имеет значение в следующих
ref.setSt1_vs1_bag6_rb(rs.getDouble(8));
ref.setSt1_vs1_bag7_rb(rs.getDouble(9));
ref.setSt1_vs1_bag8_rb(rs.getDouble(10));
st_jsp.add(ref);
где матч Ref_user_interface ref=new Ref_user_interface();
В моем методе вычитать, я получаю ** не могу конвертировать из Ref_user_interface Удвоить ** на линии Double x= ref_jsp.get(i);Double y=st_jsp.get(i);
. Есть ли способ, с помощью которого я могу вычесть мои значения из двух списков, в которых хранятся данные типа объекта.?
EDIT-1 У меня есть геттер и сеттер methods.But для каждого значения списка, Должен ли я включать в себя методы геттер ?? Для моего геттер и сеттер метода, пожалуйста, перейдите по ссылке setter method of mine
EDIT -2
Я изменил мой метод вычитания всех ваших ответов как-
public LinkedHashMap<String, List<Double>> diff()
{
List<Double> z=new ArrayList<Double>();
for(int i=0;i<st_jsp.size()&&i<ref_jsp.size();i++)
{
Comaprision refObj = ref_jsp.get(i);
Comaprision stObj = st_jsp.get(i);
Double x =refObj.getBeam_current();
x+=refObj.getBeam_energy();
x+=refObj.getSt2_vs2_bag1_rb();
x+=refObj.getSt2_vs2_bag2_rb();
x+=refObj.getSt2_vs2_bag3_rb();
x+=refObj.getSt2_vs2_bag4_rb();
x+=refObj.getSt2_vs2_bag5_rb();
x+=refObj.getSt2_vs2_bag6_rb();
x+=refObj.getSt2_vs2_bag7_rb();
x+=refObj.getSt2_vs2_bag8_rb();
x+=refObj.getSt2_vs2_bag9_rb();
Double y = stObj.getBeam_current();
y+=stObj.getBeam_energy();
y+=stObj.getSt2_vs2_bag1_rb();
y+=stObj.getSt2_vs2_bag2_rb();
y+=stObj.getSt2_vs2_bag3_rb();
y+=stObj.getSt2_vs2_bag4_rb();
y+=stObj.getSt2_vs2_bag5_rb();
y+=stObj.getSt2_vs2_bag6_rb();
y+=stObj.getSt2_vs2_bag7_rb();
y+=stObj.getSt2_vs2_bag8_rb();
if((x>y)){
z.add(x-y);
}
else{
z.add(y-x);
dif.put("", z);
}
return dif;
}
, но я не могу Unders и что все значения в 1 индексе добавляются, а затем объединены с y в индексе 1 и т. д. Более того, этот цикл дает мне 42 значения. Мой ref_jsp имеет 21 строку и st_jsp имеет 78 строк, но значение этих строки повторяются twice.I не может понять это цикл .Please помочь мне explain.I не хочу, чтобы сложить свои значения в индексе,
Моя актуальная проблема заключается в ->Я просто хочу сравнить значение в getter каждого индекса x со значением на getter каждого индекса y и найти разницу.
Как получить все методы getter, чей сеттер находится в списке st_jsp в Double x и получить все методы getter, чей сеттер находится в списке ref_jsp в переменной Double y, а затем выполнить сравнение обоих.? – MES