2015-06-24 1 views
0

У меня есть консольное приложение java, приложение которого отличается разницей для запуска в Eclipse и в командной строке.Разница Java для выполнения приложения в командной строке и Eclipse

я уже обнаружил разницу в моей бизнес-логики и заключается в следующем:

В Eclipse:

List<ErpInvoice.Concepto.ConceptosHGH> lsTempConcepto = new ArrayList<ErpInvoice.Concepto.ConceptosHGH>(tConcepto.getConcepto().size()); 
    lsTempConcepto.addAll(tConcepto.getConcepto()); 

    System.out.println(lsTempConcepto.get(0).isPrimary()); //FALSE 
    Collections.sort(lsTempConcepto); 
    System.out.println(lsTempConcepto.get(0).isPrimary()); //TRUE 

В командной строке:

List<ErpInvoice.Concepto.ConceptosHGH> lsTempConcepto = new ArrayList<ErpInvoice.Concepto.ConceptosHGH>(tConcepto.getConcepto().size()); 
    lsTempConcepto.addAll(tConcepto.getConcepto()); 

    System.out.println(lsTempConcepto.get(0).isPrimary()); //FALSE 
    Collections.sort(lsTempConcepto); 
    System.out.println(lsTempConcepto.get(0).isPrimary()); //FALSE 

Идея У меня есть список с два элемента и этот список пришел в следующем порядке:

Первый элемент (0) его attr ibute IsPrimary = False

и

Второй элемент (1), его атрибут IsPrimary = True

И после того, как выполнить Collections.sort (список) заказ должен был быть следующий один

Первый Элемент (0), его атрибут IsPrimary = True

и

Второй элемент (1), его атрибут IsPrimary = False

и почему разница?

ответ

1

Это просто комментарий, а не ответ, поскольку у меня сейчас не хватает репутации :).

Возможно, U необходимо вставить код «ErpInvoice.Concepto.ConceptosHGH». Этот класс должен реализовывать интерфейс «java.lang.Comparable». Просто проверьте метод CompareTo (T o).

+0

Вы правы, настоящая проблема была в методе compareTo, спасибо большое !. – CR7