ee.Number.toInt64

將輸入值轉換為帶正負號的 64 位元整數。

用量傳回
Number.toInt64()數字
引數類型詳細資料
這個:input數字輸入值。

範例

程式碼編輯器 (JavaScript)

// Cast a number to signed 64-bit integer: [-9223372036854776000, 9223372036854776000].
var number = ee.Number(100);
print('Number:', number);

var int64Number = number.toInt64();
print('Number cast to int64:', int64Number);


/**
 * Casting numbers to int64 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 int64 loses decimal precision.
var float = ee.Number(1.7);
print('Floating point value:', float);

var floatToInt64 = float.toInt64();
print('Floating point value cast to int64:', floatToInt64);

// A number greater than int64 range max cast to int64 becomes int64 range max.
var INT64_MAX = 9223372036854776000;
var outOfRangeHi = ee.Number(INT64_MAX + 12345);
print('Greater than int64 max:', outOfRangeHi);

var outOfRangeHiToInt64 = outOfRangeHi.toInt64();
print('Greater than int64 max cast to int64 becomes int64 max:', outOfRangeHiToInt64);

// A number greater than int64 range min cast to int64 becomes int64 range min.
var INT64_MIN = -9223372036854776000;
var outOfRangeLo = ee.Number(INT64_MIN - 12345);
print('Less than int64 min:', outOfRangeLo);

var outOfRangeLoToInt64 = outOfRangeLo.toInt64();
print('Less than int64 min cast to int64 becomes int64 min:', outOfRangeLoToInt64);

Python 設定

請參閱 Python 環境頁面,瞭解 Python API 和如何使用 geemap 進行互動式開發。

import ee
import geemap.core as geemap

Colab (Python)

# Cast a number to signed 64-bit integer:
# [-9223372036854775808, 9223372036854775808].
number = ee.Number(100)
print('Number:', number.getInfo())

int64_number = number.toInt64()
print('Number cast to int64:', int64_number.getInfo())


"""Casting numbers to int64 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 int64 loses decimal precision.
float_number = ee.Number(1.7)
print('Floating point value:', float_number.getInfo())

float_to_int64 = float_number.toInt64()
print('Floating point value cast to int64:', float_to_int64.getInfo())

# A number greater than int64 range max becomes int64 range max.
# Python int is too large to be mapped to int64, use float instead.
INT64_MAX = 9223372036854775808.0
out_of_range_hi = ee.Number(INT64_MAX + 12345)
print('Greater than int64 max:', '{:.0f}'.format(out_of_range_hi.getInfo()))

out_of_range_hi_to_int64 = out_of_range_hi.toInt64()
print('Greater than int64 max cast to int64 becomes int64 max:',
      '{:.0f}'.format(out_of_range_hi_to_int64.getInfo()))

# A number greater than int64 range min becomes int64 range min.
# Python int is too large to be mapped to int64, use float instead.
INT64_MIN = -9223372036854775808.0
out_of_range_lo = ee.Number(INT64_MIN - 12345)
print('Less than int64 min:', '{:.0f}'.format(out_of_range_lo.getInfo()))

out_of_range_lo_to_int64 = out_of_range_lo.toInt64()
print('Less than int64 min cast to int64 becomes int64 min:',
      '{:.0f}'.format(out_of_range_lo_to_int64.getInfo()))