C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: 変換方法がわかりません。


(過去ログ 164 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■94869 / inTopicNo.1)  変換方法がわかりません。
  
□投稿者/ ファイター (1回)-(2020/05/28(Thu) 16:13:55)

分類:[.NET 全般] 

C#でプログラムを作成しています。

List<int> ilst
List<string> slst

がある場合

文字列→数値
ilst = slst.ConvertAll(int.Parse);

逆はなぜできないのでしょうか?
slst = ilst.ConvertAll(string.Parse);

引用返信 編集キー/
■94870 / inTopicNo.2)  Re[1]: 変換方法がわかりません。
□投稿者/ Hongliang (1038回)-(2020/05/28(Thu) 16:21:15)
Int32.Parse(string) 静的メソッドは存在していて、
https://docs.microsoft.com/ja-jp/dotnet/api/system.int32.parse?view=netcore-3.1
Stirng.Parse(int) 静的メソッドは存在していないからです。

int -> string への変換は、一般的には ToString インスタンスメソッドを使用します。
ConvertAll には、ラムダ式を使って
ilist.ConvertAll(i => i.ToString())
のように渡せます。

Convert.ToString(int) 静的メソッドは存在しているので、
https://docs.microsoft.com/ja-jp/dotnet/api/system.convert.tostring?view=netcore-3.1#System_Convert_ToString_System_Int32_
ilist.ConvertAll(Convert.ToString)
と書くこともできます。

どちらを使うかはまあ好みの範囲でしょうか。
引用返信 編集キー/
■94936 / inTopicNo.3)  Re[2]: 変換方法がわかりません。
□投稿者/ ファイター (3回)-(2020/06/04(Thu) 15:40:05)
No94870 (Hongliang さん) に返信


いちいちループすることなくできました。
ありがとうございました。



解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -