首页 > 解决方案 > Unity - 无法将列表中的字符串连接在一起

问题描述

我正在尝试创建一个宾果游戏呼叫者,所以我有一个 1-90 的数字列表,它随机选择一个,将其从“TobeCalled”列表移动到“DeadNumbers”列表中,这一切都很好。我遇到的问题是我想将列表打印为屏幕上的对象,因此将其转换为字符串并使用文本分隔形式打印它我得到了错误。

Assets\Random_Number.cs(41,17):错误 CS0103:当前上下文中不存在名称“字符串”

这是代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Random_Number : MonoBehaviour
{

  public List <int> ListofNumbers = new List<int>(); // List of the numbers being called
  public List <string> DeadNumbers = new List<string>(); // List of numbers that have been called

  public Text text_to_be_Printed; // Text Element

  private int numberSelected;
  private string numberSelected_str;
  public string DeadNumbers_str;

  void Start() {
    text_to_be_Printed = GetComponent<Text>();
    for(int i = 1; i <= 90; i++){

        ListofNumbers.Add(i); // Makes a list of all the numbers 

      }

  }

  void Update()
  {
    if (Input.GetKeyDown("space")){ // If space is pressed -text
      numberSelected = ListofNumbers[Random.Range (0, ListofNumbers.Count)]; // Get a random number text

      numberSelected_str = numberSelected.ToString();
      text_to_be_Printed.text = numberSelected_str;

      DeadNumbers.Add(numberSelected_str);
      ListofNumbers.Remove(numberSelected);

      Debug.Log(String.Join(", ", DeadNumbers));

      // DeadNumbers_str = String.Join(",", DeadNumbers);
      // Debug.Log(DeadNumbers_str);
    }
  }
}

我试过 uning String.Join 但我得到了上面的错误,我对 Unity 和 c# 很陌生,所以任何帮助都会被应用

标签: c#listuser-interfaceunity3d

解决方案


using System;在文件顶部丢失了。String类位于System命名空间。

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Random_Number : MonoBehaviour
{

  public List <int> ListofNumbers = new List<int>(); // List of the numbers being called
  public List <string> DeadNumbers = new List<string>(); // List of numbers that have been called

  public Text text_to_be_Printed; // Text Element

  private int numberSelected;
  private string numberSelected_str;
  public string DeadNumbers_str;

  void Start() {
    text_to_be_Printed = GetComponent<Text>();
    for(int i = 1; i <= 90; i++){

        ListofNumbers.Add(i); // Makes a list of all the numbers 

      }

  }

  void Update()
  {
    if (Input.GetKeyDown("space")){ // If space is pressed -text
      numberSelected = ListofNumbers[Random.Range (0, ListofNumbers.Count)]; // Get a random number text

      numberSelected_str = numberSelected.ToString();
      text_to_be_Printed.text = numberSelected_str;

      DeadNumbers.Add(numberSelected_str);
      ListofNumbers.Remove(numberSelected);

      Debug.Log(String.Join(", ", DeadNumbers));

      // DeadNumbers_str = String.Join(",", DeadNumbers);
      // Debug.Log(DeadNumbers_str);
    }
  }
}

推荐阅读