簡體   English   中英

從Delphi到JLong到Double型鑄造

[英]JLong to Double type casting with Delphi

我在線搜索了如何將JLong(JavaType)轉換為Double以便在C ++代碼中使用它,但是沒有找到示例。 我嘗試了各種方法來投射此JLong,但沒有任何效果。

function TimeSinceBoot(const aContext: JContext): Double;
  begin
    result := (((TJSystemClock.JavaClass.ELAPSED_REALTIME div 1000(JLong)) div 60(JLong))(JDouble))(Double);
  end;

它說仍然是運算符或; 失蹤。 有什么建議么 ?

除了使用錯誤的語法進行強制轉換 (並且強制轉換語法已得到充分證明 )的事實外,在Delphi中,無論如何都無法將整數類型強制轉換為浮點類型 而且,您當然無法將JLong轉換為雙倍。

但是很明顯,在Delphi轉換中, JLong是一個接口,它帶有一個稱為doubleValue的方法。 使用:

Result := TJSystemClock.JavaClass.ELAPSED_REALTIME.doubleValue / 60000.0;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM