Если Вы передаёте числовые типы JavaScript в качестве параметров методам Java, Java конвертирует эти значения в соответствии с правилами, описанными в следующей таблице:
double
Точное значение переносится в Java без округления и без потери точности или знака.
lava.lang.Double
java.lang.Object
Создаётся новый экземпляр java.lang.Double, и точное значение передаётся в Java без округления и без потери точности или знака.
float
Значения округляются до чисел с плавающей точкой.
Значения, которые слишком малы или велики, чтобы быть представленными, округляются до +infinity или -infinity.
byte
char
int
long
short
Значения округляются с использованием режима round-to-negative-infinity/округление-в-сторону-отрицательной-бесконечности.
Значения, которые слишком малы или велики, чтобы быть представленными, дают ошибку времени выполнения.
Значения NaN конвертируются до нуля.
java.lang.String
Значения конвертируются в строки. Например,
237 становится "237"
boolean
Значения 0 и NaN конвертируются в false.
Другие значения конвертируются в true.
Если число JavaScript передаётся в качестве параметра в Java-метод, который ожидает экземпляр объекта java.lang.String, это число конвертируется в строку. Используйте метод equals() для сравнения результата этой конвертации с другими строковыми значениями.