我有一个${PROJECT_SOURCE_DIR}
,其中Log是一个具有各种属性的Java类。
如果它们相同,我需要删除两个连续的Log对象。我定义了两个日志是相等的,如果它们的log_message相等并且它们的时间戳彼此非常接近。
一个想法是遍历列表中的每个日志并检查当前是否等于下一个。如果这是真的,那么我需要从列表中删除当前对象并继续。
我需要保持target_include_directories
的顺序(我可以对列表进行排序,然后在必要时通过减少时间戳再次进行更换)。已经通过减少时间戳来排序#include <iostream>
using namespace std;
double NumberOfPennies(int dollars, int pennies = 0)
{
int totalPennies = 0;
totalPennies = (dollars * 100) + pennies;
cout << totalPennies;
return 0;
}
int main()
{
cout << NumberOfPennies(5, 6) << endl; // Should print 506
cout << NumberOfPennies(4) << endl; // Should print 400
return 0;
}
。
我试着这样做:
List<Log>
但我得到索引超出范围的错误。
我认为这是错的吗?还有另一种方法可以做得更好吗?
答案 0 :(得分:0)
你已经有了一个迭代器 - 你应该使用它,而不是索引:
Log prev = null;
Log current = it.next();
while (it.hasNext()) {
prev = current;
current = it.next();
if (current.getLogMessage().equals(next.getLogMessage())) {
it.remove();
}
}