Използвам jxl за четене на Excel файл. Трябва да взема решение въз основа на цвета на шрифта на клетка. Цветът на шрифта на клетката, който получавам, е черен, но RGB стойността е (1, 0, 0).
Когато го сравня с Colour.BLACK, той се проваля при сравнението ==, защото RGB стойността на Colour.BLACK е (0,0,0).
Colour color = nameCell.getCellFormat().getFont().getColour();
if(color == Colour.BLACK) //fails this test
options = "0";
else
options = "1";
В горния код color.getDescription()
дава черен цвят в описанието.
Как да открия, че "черното" е често срещано и в двата обекта Colour.BLACK
и nameCell.getCellFormat().getFont().getColour()
?
if(color ==Colour.BLACK)//fails this test
Не би компилирал.. За по-добра помощ по-рано, публикувайте MCVE (Minimal Complete Verifiable Primer) или SSCCE (Кратък, самостоятелен, правилен пример). Между другото - сравнете обекти с.equals(..)
, а не с==
.. - person Andrew Thompson   schedule 28.01.2015