Obter o valor real da célula do excel com POI sem definir um tipo de dados

Eu pego minhas células de um arquivo .xls assim:

cell.getStringCellValue();

Mas como algumas células são numéricas, eu tenho que fazer isso:

                try
                {
                    cells[colIx] = cell.getStringCellValue();
                } catch (IllegalStateException e)
                {
                    cells[colIx] = String.valueOf(cell.getNumericCellValue());
                }

como está recebendo um duplo e depois o converte em uma string, isso resulta em algumas operações indesejadas, como:

1 se converte em 1.0 (não é um grande problema)16711680 converte para 1,671168E7

Como resolvo isso e obtenho o valor real da célula em vez de alguns números convertidos? Além disso, todas as células são definidas como padrão no excel

questionAnswers(2)

yourAnswerToTheQuestion