0
我有两个数组列表。 如何匹配刚刚运行过程的字符串的值?如何比较2个数组对象中的一个数值对象
编码:
ArrayList<TimeSeriesObject> arrayDayMinutes = new ArrayList<TimeSeriesObject>();
List<GetTimeSeriesResponseType.Row> rows = (List<Row>) el.getObjectValue();
for (i = iStart; i < arrayDayMinutes.size(); i++)
{
for (int j = n; j < rows.size(); j++)
{
nLoop++;
if (arrayDayMinutes.get(i).getTimeStamp().equals(ConvertDateTime(rows.get(j).getTIMESTAMP().toGregorianCalendar())))
{
// khteo 20140211
if (arrayDayMinutes.get(i).getTimeStamp().equals(ConvertDateTime(rows.get(j).getTIMESTAMP().toGregorianCalendar(), marketInfo.getTimezone())))
{
arrayDayMinutes.get(i).setOpen(rows.get(j).getOPEN());
arrayDayMinutes.get(i).setHigh(rows.get(j).getHIGH());
arrayDayMinutes.get(i).setLow(rows.get(j).getLOW());
arrayDayMinutes.get(i).setClose(rows.get(j).getCLOSE());
try
{
arrayDayMinutes.get(i).setVolume(rows.get(j).getVOLUME());
}
catch (NullPointerException npe)
{
arrayDayMinutes.get(i).setVolume(0);
}
n = j + 1;
long executeReques_end = System.currentTimeMillis();
// System.out.println("After 2nd loop:" + executeReques_end +"|total timing " + (executeReques_end-executeRequest_2ndbeforeLoop));
break;
}
}
}
}
如果我使用上述步骤,
if (arrayDayMinutes.get(i).getTimeStamp().equals(ConvertDateTime(rows.get(j).getTIMESTAMP().toGregorianCalendar())))
上面的代码有一个糟糕的表现...如何提高性能?当ArrayList不匹配时,它会继续加载..可以跳过不匹配的值吗?
的可能的复制[简单的方法来比较2 ArrayLists](https://stackoverflow.com/questions/19155283/simple-way-to-compare-2-arraylists) – Aman
没有...这是为字符串...这我也知道。我的arraylist是对象 –
嗨沙龙,字符串也是对象。因此,链接对于您的要求也是相似的。 :-) – Aman