3

Javaでは、 などのマップがあり、 、、などmap<K,V>の任意のタイプになる可能性があるという問題が発生しました。KVintLongStringTime

Kマップがシリアル化された後、または の長さを取得できVますか? このアイデアを実装するための一般的な方法を書くことはできますか? 何かのようなもの:

public long getLength(object obj) {
    //how to get the length of this obj, obj can be any type
}

どうすればそれができますか?

4

2 に答える 2

0

いいえ。

ただし、概算はできますが、 sizeof 関数に関する素晴らしい記事があります

その理由は、デフォルトのバイナリ シリアライゼーションを変更できるためです (これはやや冗長です)。これらのツールには比較があります。前回このトピックに参加したときは、Kyro が最も最適でした (冗長なデータも検証関連のデータもエクスポートしないため、デフォルトの Java バイナリ シリアル化よりも 10 倍小さい)。

ここに画像の説明を入力

ツールについての比較は次のとおりです。

于 2014-01-24T14:06:14.023 に答える