1

テキストボックスにテキストの配列を表示したいのですが、コンマで分割した後、一連の数値を textbox1 に渡し、コンマで分割します。数値を降順に並べ替えるにはどうすればよいですか。これが私がこれまでに得た方法です

    private void btnCalc_Click(object sender, EventArgs e)
    {
        //string A = txtInput.Text;
        string[] arrText = txtInput.Text.Split(',');
        int[] newOne = new int[]{};
        foreach (string r in arrText)
        {

        }
        txtOutput.AppendText( );
    }
4

3 に答える 3

3
int[] newOne = arrText.Select(x => int.Parse(x)).OrderByDescending(x => x).ToArray();
于 2012-10-19T11:01:40.190 に答える
1

次のようにできるはずです。

private void btnCalc_Click(object sender, EventArgs e)
{
    //string A = txtInput.Text;
    string[] arrText = txtInput.Text.Split(',');
    txtOutput.Text = string.Join(",",arrText.Select( s => int.Parse(s)).OrderByDescending( i => i))
}

コンマ間の入力テキストの一部が数字でない場合、これは爆発することに注意してください。

于 2012-10-19T11:05:16.203 に答える
1

これはうまくいくはずです:

var newOne = arrText.OrderByDescending(int.Parse).ToArray();

foreach (var s in newOne)
{
      txtOutput.AppendText(s);
}
于 2012-10-19T11:06:20.470 に答える