【ハルシオンブログ】LinqのMAX,MINを使うとListの中の最大数とか簡単に取れるんすね。
こんにちは。坂内っす。
ポケガ3って今Unity2020.1で開発してるんですが、Android12だと動かないことがあるとのことが判明。
Unity2020.3くらいにしないといけないぽいですね。
ちょっと手元にAndroid12の実機がないためどんなエラーがでてるのか分からないですが・・・・
ちょっとLinqの機能で最近使うものがあったので紹介。
MAXとMIN おまけにSUMも。
こんな感じでクラスを作ってListにぶち込みます。
実際にMAXとかMINしてるのはここ。
// itemsの中で一番大きいItemNum
Debug.Log(items.Max(x => x.itemNum));
// itemsの中で一番小さいItemNum
Debug.Log(items.Min(x => x.itemNum));
// ItemNumの合計
Debug.Log(items.Sum(x => x.itemNum));
実行結果はこれ。
ちゃんと各itemのitemNumから最大、最初、合計を持ってきてますね。
という感じで、Listの中の値を簡単に取得計算できる方法でした。
あでゅ~ノシ
ポケガ3って今Unity2020.1で開発してるんですが、Android12だと動かないことがあるとのことが判明。
Unity2020.3くらいにしないといけないぽいですね。
ちょっと手元にAndroid12の実機がないためどんなエラーがでてるのか分からないですが・・・・
ちょっとLinqの機能で最近使うものがあったので紹介。
MAXとMIN おまけにSUMも。
using System.Collections.Generic;
using UnityEngine;
using System.Linq;
public class Blog20220228 : MonoBehaviour
{
public class Item0228 {
public int itemNo;
public string itemName;
public int itemNum;
}
List items = new List();
void Start()
{
SetItemData();
// itemsの中で一番大きいItemNum
Debug.Log(items.Max(x => x.itemNum));
// itemsの中で一番小さいItemNum
Debug.Log(items.Min(x => x.itemNum));
// ItemNumの合計
Debug.Log(items.Sum(x => x.itemNum));
}
void SetItemData() {
Item0228 item1 = new Item0228();
item1.itemNo = 1;
item1.itemName = "アイテム1";
item1.itemNum = 10;
items.Add(item1);
Item0228 item2 = new Item0228();
item2.itemNo = 2;
item2.itemName = "アイテム2";
item2.itemNum = 14;
items.Add(item2);
Item0228 item3 = new Item0228();
item3.itemNo = 3;
item3.itemName = "アイテム3";
item3.itemNum = 21;
items.Add(item3);
Item0228 item4 = new Item0228();
item4.itemNo = 1;
item4.itemName = "アイテム4";
item4.itemNum = 4;
items.Add(item4);
}
}
こんな感じでクラスを作ってListにぶち込みます。
実際にMAXとかMINしてるのはここ。
// itemsの中で一番大きいItemNum
Debug.Log(items.Max(x => x.itemNum));
// itemsの中で一番小さいItemNum
Debug.Log(items.Min(x => x.itemNum));
// ItemNumの合計
Debug.Log(items.Sum(x => x.itemNum));
実行結果はこれ。
21
UnityEngine.Debug:Log (object)
Blog20220228:Start () (at Assets/Scripts/Blog20220228.cs:21)
4
UnityEngine.Debug:Log (object)
Blog20220228:Start () (at Assets/Scripts/Blog20220228.cs:23)
49
UnityEngine.Debug:Log (object)
Blog20220228:Start () (at Assets/Scripts/Blog20220228.cs:25)
ちゃんと各itemのitemNumから最大、最初、合計を持ってきてますね。
という感じで、Listの中の値を簡単に取得計算できる方法でした。
あでゅ~ノシ
Category: 開発日記(Unity)
« 【ハルシオンブログ】Dropdownのリストの中の文字サイズを大きくする | 【ハルシオンブログ】コンポーネントを一気に全部閉じたいとき »
コメント
| h o m e |