Ошибка: несоответствие типов: невозможно преобразовать из (Object) => int в int с помощью Java Xtend - PullRequest
0 голосов
/ 23 мая 2019

У меня ошибка при разделении извлечения данных из Excel. когда я на a.java это работает. Но теперь я конвертирую свои скрипты в Java Xtend и теперь у меня появляется следующая ошибка.

enter image description here

Вот код

var dashboards = M3ASmokeTest.ReadExcelFile();
var countdsh = 0;
var countdom = 0;
var countrep = 0;
Thread.sleep(20000);
for(String groupedDomain: dashboards)
{
    var domain = dashboards.get(countdom).split(";")[0];
    var dboards = dashboards.get(countdsh).split(";")[1];
    var reports = dashboards.get(countdsh).split(";")[2];'
}

1 Ответ

1 голос
/ 23 мая 2019

Должен признать, я не знаю xtend, но из документов написано:

https://www.eclipse.org/xtend/documentation/2.3.0/Documentation.pdf стр. 39

Когда последний параметр вызова метода является лямбда-выражением, его можно передать правильно после списка параметров. Например, если вы хотите отсортировать некоторые Строки по их длине можно написать:

Коллекции :: сортировка (someStrings) [a, b | a.length - b.length]

Таким образом, квадратные скобки обозначают лямбда-выражения, что вы и получаете (поэтому я предполагаю ошибку в xtend, что она неправильно пытается применить это в вашем случае).

Поскольку кажется, что xtend автоматически преобразует массивы в списки (стр. 15), попробуйте заменить [0] на get (0), поэтому:

var domain = dashboards.get(countdom).split(";").get(0);
...