ee.Number.toInt8
Casts the input value to a signed 8-bit integer.
Usage | Returns |
---|
Number.toInt8() | Number |
Argument | Type | Details |
---|
this: input | Number | The input value. |
Examples
// Cast a number to signed 8-bit integer: [-128, 127].
var number = ee.Number(100);
print('Number:', number);
var int8Number = number.toInt8();
print('Number cast to int8:', int8Number);
/**
* Casting numbers to int8 that are outside of its range and precision can
* modify the resulting value, note the behavior of the following scenarios.
*/
// A floating point number cast to int8 loses decimal precision.
var float = ee.Number(1.7);
print('Floating point value:', float);
var floatToInt8 = float.toInt8();
print('Floating point value cast to int8:', floatToInt8);
// A number greater than int8 range max cast to int8 becomes int8 range max.
var INT8_MAX = 127;
var outOfRangeHi = ee.Number(INT8_MAX + 12345);
print('Greater than int8 max:', outOfRangeHi);
var outOfRangeHiToInt8 = outOfRangeHi.toInt8();
print('Greater than int8 max cast to int8 becomes int8 max:', outOfRangeHiToInt8);
// A number greater than int8 range min cast to int8 becomes int8 range min.
var INT8_MIN = -128;
var outOfRangeLo = ee.Number(INT8_MIN - 12345);
print('Less than int8 min:', outOfRangeLo);
var outOfRangeLoToInt8 = outOfRangeLo.toInt8();
print('Less than int8 min cast to int8 becomes int8 min:', outOfRangeLoToInt8);
Python setup
See the
Python Environment page for information on the Python API and using
geemap
for interactive development.
import ee
import geemap.core as geemap
# Cast a number to signed 8-bit integer: [-128, 127].
number = ee.Number(100)
print('Number:', number.getInfo())
int8_number = number.toInt8()
print('Number cast to int8:', int8_number.getInfo())
"""Casting numbers to int8 that are outside of its range and precision can
modify the resulting value, note the behavior of the following scenarios.
"""
# A floating point number cast to int8 loses decimal precision.
float_number = ee.Number(1.7)
print('Floating point value:', float_number.getInfo())
float_to_int8 = float_number.toInt8()
print('Floating point value cast to int8:', float_to_int8.getInfo())
# A number greater than int8 range max cast to int8 becomes int8 range max.
INT8_MAX = 127
out_of_range_hi = ee.Number(INT8_MAX + 12345)
print('Greater than int8 max:', out_of_range_hi.getInfo())
out_of_range_hi_to_int8 = out_of_range_hi.toInt8()
print('Greater than int8 max cast to int8 becomes int8 max:',
out_of_range_hi_to_int8.getInfo())
# A number greater than int8 range min cast to int8 becomes int8 range min.
INT8_MIN = -128
out_of_range_lo = ee.Number(INT8_MIN - 12345)
print('Less than int8 min:', out_of_range_lo.getInfo())
out_of_range_lo_to_int8 = out_of_range_lo.toInt8()
print('Less than int8 min cast to int8 becomes int8 min:',
out_of_range_lo_to_int8.getInfo())
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2023-10-06 UTC.
[null,null,["Last updated 2023-10-06 UTC."],[[["`Number.toInt8()` casts a given number to a signed 8-bit integer, which has a valid range of -128 to 127."],["Numbers exceeding the maximum value of an 8-bit integer will be truncated to the maximum value (127)."],["Numbers falling below the minimum value of an 8-bit integer will be truncated to the minimum value (-128)."],["Floating-point numbers cast to signed 8-bit integers will lose their decimal precision."]]],["The `toInt8()` method casts a numerical input to a signed 8-bit integer, with a range of -128 to 127. Floating-point numbers lose their decimal precision during this cast. Numbers exceeding the maximum range (127) are converted to 127, and those below the minimum (-128) become -128. The function takes a Number as input and returns a Number that is an 8 bit signed integer.\n"]]