質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Q&A

0回答

849閲覧

Array.Findの扱い方

KGMIRROR

総合スコア12

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

0グッド

1クリップ

投稿2019/09/18 09:41

前提・実現したいこと

Unityでスクリプトから画像を変えたいです。

発生している問題・エラーメッセージ

調べても力業な方法やResourcesフォルダを使う方法しか見当たりませんでした。 そのResourcesフォルダも調べると使わないほうがいいとなっていたことと、System.Array.Find()の使い方が調べてもいまいち第二引数についてわからず困っています。 とりあえず今回知りたいことは以下の2つです。 ・Array.Findの使い方 ・もし存在するのであれば、そもそもResourcesフォルダを使わない方法(力業除く)

該当のソースコード

C#

1// スプライトの取得 2 // @param fileName ファイル名 3 // @param spriteName スプライト名 4 public Sprite GetSprite(string fileName, string spriteName) { 5 Sprite[] sprites = Resources.LoadAll<Sprite>(fileName); 6 return System.Array.Find<Sprite>(sprites, (sprite) => sprite.name.Equals(spriteName)); 7 }

試したこと

・ソースコードをVSで打ち込んだところ警告は出ませんでした。しかし、Array.Findの第二引数で「(sprite)」と書いても問題ない理由がわからないことと、第二引数の意味が分かりませんでした。
・そのほかにもArray.Findのリファレンスを見ましたが、例示されている第二引数もなぜそれで通るのか理解できなかった(VSで打ち込んではいません)

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zuishin

2019/09/18 09:47

第二引数はラムダ式です。 結局、コードは動くけれども意味が分からないということでしょうか? それとも、コードが意図通り動かないということでしょうか?
KGMIRROR

2019/09/18 10:45

コードの意味が分からないと言いたかったです。表現が下手ですみません。 ラムダ式がわかっていなかったので調べてみます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問