FC2ブログ
    02 «1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.» 04

    ハルシオンシステムの気ままBlog

    株式会社ハルシオンシステムのメンバーが送る、UnityやらJavaやらの技術的話題から、自社開発のアプリの宣伝とかとかのブログです。ほんと気ままにいきたいと思います。更新日は毎週 月 木でっす!

     

    【ハルシオンブログ】Unity C#でメソッドの戻り値を複数指定できるよ。Tupleの使い方について。 

    こんにちは。坂内です。

    皆さんお元気ですか?緊急事態宣言が解除されましたが、新規感染者は増えているようです。
    この生活はいつまで続くのでしょうか・・・・
    そろそろ北海道に遊びに行きたいところです。

    さて、UnityのC#にてメソッドで複数の値を返したい時ありませんか?
    なんかあるぽいですね。

    Tupleというのがあるぽいですね。

    こんな感じで書けるようです。


    using System;
    using UnityEngine;
    using UnityEngine.UI;

    public class Blog20210322 : MonoBehaviour
    {

    [SerializeField] Button btnRandom;
    [SerializeField] TMPro.TMP_Text lblRandom;

    void Start()
    {
    btnRandom.onClick.AddListener(OnClickRandom);
    }

    void OnClickRandom() {
    var retNumber = GetRandom3Num();
    lblRandom.text = retNumber.Item1 + ":" + retNumber.Item2 + ":" + retNumber.Item3;
    }

    Tuple<int, int, int> GetRandom3Num() {
    int ran1 = UnityEngine.Random.Range(0, 100);
    int ran2 = UnityEngine.Random.Range(0, 100);
    int ran3 = UnityEngine.Random.Range(0, 100);
    return Tuple.Create(ran1, ran2, ran3);
    }
    }




    GetRandom3Numのメソッドの返り値が「Tuple<int, int, int>」となってます。
    ここで宣言した分戻せるみたいですね。

    受け取ったときに使う場合は「戻り値.Item●」●には数値が入ります。
    ●番目の戻り値って感じぽいです。

    こんな感じでメソッドの戻り値を複数指定できるよーって話でした。


    では、あでゅ~ノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0