[VB.NET] integer を Strings.Join で結合する方法 (その2)

2010年9月30日

 前回、最終的にこんなコードを書いたわけですが。

Dim source As Integer() = {1, 2, 3, 4, 5}

Dim int2strConverter As New System.Converter(Of Integer, String)(Function(x) x.ToString)
Dim s() = Array.ConvertAll(source, int2strConverter)

Dim csv As String = Strings.Join(s, ",")

 delegeteだと、また別に関数書かないとならないので、勢いラムダ式にしてしまったわけですが。
 そもそも、VB2008系の構文使うなら、そして変換しつつ別の配列をおこすなら、こんなことしなくても Linq で十分いけるじゃん?と今日気づいた。

 こんな感じ。上のよりはマシなのではと…

Dim source As Integer() = {1, 2, 3, 4, 5}

Dim s = From x In source Select CStr(x)
Dim csv = Strings.Join(s.ToArray, ",")

 まあとりあえず当面は Linq で解決ということにしよう。






カテゴリー: Program, VB.NET

Follow comments via the RSS Feed | Leave a comment | Trackback URL

2 Comments to "[VB.NET] integer を Strings.Join で結合する方法 (その2)"

  1. よねけん

    ラムダ式使うなら以下のようにそこそこすっきりかけますよ。

    Dim csv As String = String.Join(",", Array.ConvertAll(source, Function(x) x.ToString))

  2. オールトの雲

     ご指摘ありがとうございます。
     我ながら修行が全く足りておりませぬ…

     記事前段側のロジックをスリムにしたものですね。
     結果がわかれば「ほほう」なんですが、その壁がなかなか越えられないんですよね(汗
     精進あるのみだなあ。

コメントを投稿する

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)


«   »
 
Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org