Bitcoinj

如何獲得最後執行的交易?

  • June 15, 2017

我使用錢包應用程序並使用BitcoinJ程式。我需要從錢包中找到最後執行的交易。在org.bitcoinj.core.Wallet課堂上,我看到有一個方法getTransactionsByTime()返回所有非死、活動事務的列表,這些事務按新近度排序為List<Transaction>.

我將訪問索引為 0 或最後一個索引的最新交易嗎?我做了一些實驗,我可能認為這將與index of 0. 因為,它返回發送資訊,我最近做了一些,但是,由於數量與執行的不匹配,仍然很奇怪。

雖然我嘗試了最後一個索引,但我認為顯然不是這種情況,因為它返回了傳入交易的資訊。

我找到最新交易的方式,

   transactions.addAll(wallet.getTransactionsByTime());    
   Transaction ts = size > 0 ? getTransactions().get(0) : null;
   this.transaction = addTransactionHistory(ts);

我在控制台中將其列印transaction為最新的。

列表中的第一個交易應該是最新的。

回答此類問題的最佳方法始終是閱讀原始碼。getTransactionsByTime來電getRecentTransactions,有評論

返回 N 個事務的列表,按年齡遞增排序。

您可以追溯以找到確保這一點的關鍵減號。

您還可以找到一個測試來明確驗證它是否按文件說明工作。

引用自:https://bitcoin.stackexchange.com/questions/54533