3

たとえば、次のシナリオでは

Convert.Int64(string somstring)

また

long.Parse(string somstring);

同じ種類の仕事をしているようです。どちらがより良い方法ですか?

ありがとう

4

4 に答える 4

4

ソースを見ると、Convert.ToInt64(string)単に を呼び出しlong.Parseますが、文字列がnull最初ではないことを確認します。

long.Parse意図 (文字列の解析) がより明確になるため、calls をお勧めします。

Convert変換元の型が変わる可能性がある場合は、クラスを使用することをお勧めします。(または から変換する場合object)

于 2010-03-01T21:57:35.150 に答える
2

他の回答を完全にするために、入力文字列形式がわからない場合は、一般的に安全なlong.TryParseを忘れないでください。

于 2010-03-01T22:00:01.790 に答える
1

Convert.Int64内部で呼び出しlong.Parse、前に null チェックを行うだけです。ここにガッツがあります:

if (value == null)
{
    return 0L;
}
return long.Parse(value, CultureInfo.CurrentCulture);

null チェックが必要な場合は、Convert.Int64 の方が安全です。それ以外は違いはありません。

于 2010-03-01T21:57:33.953 に答える
0

Convert.Int64 は、最初に文字列に対して null チェックを行った後、CultureInfo.CurrentCulture で long.Parse を実際に呼び出します。したがって、文字列が null にならないことがわかっている限り、ステップを保存して long.Parse を呼び出すことができます。

于 2010-03-01T21:58:39.610 に答える