公告 :凡是在
2025 年 4 月 15 日 前註冊使用 Earth Engine 的非商業專案,都必須
驗證非商業用途資格 ,才能繼續存取 Earth Engine。
提供意見
ee.Number.toInt16
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
將輸入值轉換為帶正負號的 16 位元整數。
範例
程式碼編輯器 (JavaScript)
// Cast a number to signed 16-bit integer: [-32768, 32767].
var number = ee . Number ( 100 );
print ( 'Number:' , number );
var int16Number = number . toInt16 ();
print ( 'Number cast to int16:' , int16Number );
/**
* Casting numbers to int16 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 int16 loses decimal precision.
var float = ee . Number ( 1.7 );
print ( 'Floating point value:' , float );
var floatToInt16 = float . toInt16 ();
print ( 'Floating point value cast to int16:' , floatToInt16 );
// A number greater than int16 range max cast to int16 becomes int16 range max.
var INT16_MAX = 32767 ;
var outOfRangeHi = ee . Number ( INT16_MAX + 12345 );
print ( 'Greater than int16 max:' , outOfRangeHi );
var outOfRangeHiToInt16 = outOfRangeHi . toInt16 ();
print ( 'Greater than int16 max cast to int16 becomes int16 max:' , outOfRangeHiToInt16 );
// A number greater than int16 range min cast to int16 becomes int16 range min.
var INT16_MIN = - 32768 ;
var outOfRangeLo = ee . Number ( INT16_MIN - 12345 );
print ( 'Less than int16 min:' , outOfRangeLo );
var outOfRangeLoToInt16 = outOfRangeLo . toInt16 ();
print ( 'Less than int16 min cast to int16 becomes int16 min:' , outOfRangeLoToInt16 );
Python 設定
請參閱
Python 環境 頁面,瞭解 Python API 和如何使用 geemap
進行互動式開發。
import ee
import geemap.core as geemap
Colab (Python)
# Cast a number to signed 16-bit integer: [-32768, 32767].
number = ee . Number ( 100 )
print ( 'Number:' , number . getInfo ())
int16_number = number . toInt16 ()
print ( 'Number cast to int16:' , int16_number . getInfo ())
"""Casting numbers to int16 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 int16 loses decimal precision.
float_number = ee . Number ( 1.7 )
print ( 'Floating point value:' , float_number . getInfo ())
float_to_int16 = float_number . toInt16 ()
print ( 'Floating point value cast to int16:' , float_to_int16 . getInfo ())
# A number greater than int16 range max cast to int16 becomes int16 range max.
INT16_MAX = 32767
out_of_range_hi = ee . Number ( INT16_MAX + 12345 )
print ( 'Greater than int16 max:' , out_of_range_hi . getInfo ())
out_of_range_hi_to_int16 = out_of_range_hi . toInt16 ()
print ( 'Greater than int16 max cast to int16 becomes int16 max:' ,
out_of_range_hi_to_int16 . getInfo ())
# A number greater than int16 range min cast to int16 becomes int16 range min.
INT16_MIN = - 32768
out_of_range_lo = ee . Number ( INT16_MIN - 12345 )
print ( 'Less than int16 min:' , out_of_range_lo . getInfo ())
out_of_range_lo_to_int16 = out_of_range_lo . toInt16 ()
print ( 'Less than int16 min cast to int16 becomes int16 min:' ,
out_of_range_lo_to_int16 . getInfo ())
提供意見
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權 ,程式碼範例則為阿帕契 2.0 授權 。詳情請參閱《Google Developers 網站政策 》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-07-26 (世界標準時間)。
想進一步說明嗎?
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-07-26 (世界標準時間)。"],[[["`Number.toInt16()` casts a given number to a signed 16-bit integer, effectively constraining its value within the range of -32768 to 32767."],["Values exceeding the maximum limit of this range are truncated to the maximum value (32767), and those below the minimum are set to the minimum value (-32768)."],["Casting floating-point numbers using this function results in a loss of decimal precision, as it retains only the integer portion."]]],[]]