Array型の変数の要素の一部は削除

array型の変数の要素の一部は削除できないのでしょうか?例えば、array型配列として{“a”,“b”,“c”}を定義して、"b"だけを削除して、{“a”,“c”}の配列にするのは可能なのでしょうか?方法がございましたらご教授頂けますと助かります。やはりList型でないと難しいのでしょうか?

1 Like

それを行うにはさまざまな方法があります。

以下のアプローチの1つを見つけてください。

arrStr = {"a", "b", "c"}

arrStr = arrStr.TakeWhile(Function(item) not item.Equals("b")).ToArray

Hope this helps.

Thanks
#nK

こんにちは

配列は基本的にそのサイズは変更できないものと考えていただく方が良いです。
いくつかのメソッドをつかって、結合、削除等が可能なように見えますが、結局のところ
配列を作り直していることになります。
方法としては 例えば

{"a", "b", "c"}.Where(Function(s) s<>"b").ToArray()

{"a","c"} が返ります。

そのため要素数が可変であることがわかっている場合は、最初からList等を用いた方が
パフォーマンス等の面からもベターかと思います。

以下あたりも参照いただくのが良いかと思います。

Yoichi様。いつも、ありがとうございます。そうですね。List型にした方が良さそうです。List型もトライしようと思います。

ありがとうございます。

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.