有时当我调用类的.ToString()方法时,它会返回类的完全限定名.但是对于某些类的/ struct(例如Int32),它返回一个字符串对应的对象(整数的值).这是否意味着Int32该类重写该ToString()方法,并且返回完全限定名称的类不会覆盖它,而只是调用base的(Object's)ToString()方法?Object.ToString()实现是否只返回类的完全限定名称?
我正在 Unity 中做一个游戏,需要帮助将我的结构列表转换为字符串。我下面的代码放在一个名为 MonsterHandler 的类中。
public enum S_STATE
{
S_IDLE,
S_PATROL,
S_ATTACK,
NONE
}
public struct MONSTERS
{
public string Name;
public int Health;
public int Damage;
public S_STATE State;
};
public List<MONSTERS> monsterList= new List<MONSTERS>();
void Start()
{
// add data into the monsterList
// Debug.Log(monsterList.Count); // print out 5
Debug.Log(monsterList.ToArray()); //printed out "MonsterHandler + MONSTERS"
// i want to do something like this
// "Monster_Zombie, 100, 20, S_IDLE, Monster_Donkey, 80, 30, S_IDLE, Monster_Chicken, 120 , 10, IDLE,.."
} …Run Code Online (Sandbox Code Playgroud) 如何将a的值写入hashset控制台?我不想使用foreach循环.
HashSet<string> hashSet=new HashSet<string>();
hashSet.Add("Employee");
hashSet.Add("Employee1");
Console.WriteLine(hashSet.Select(x=>x));
Run Code Online (Sandbox Code Playgroud)
产量
System.Linq.Enumerable
Run Code Online (Sandbox Code Playgroud)
预期产出
员工,Employee1
我在C#中使用方法。我返回了一些东西,但是编译器没有打印我期望的东西。它正在打印(system.string [])。我不知道为什么请帮忙。
class Program
{
static void Main(string[] args)
{
string[] sub = subjects();
Console.WriteLine(sub);
}
public static string[] subjects()
{
Console.WriteLine("Please Enter How many Subject Do you Want to input");
int limit = System.Convert.ToInt32(Console.ReadLine());
string[] Subjects = new string[limit];
for (int i = 0; i < limit; i++)
{
Console.WriteLine("Please Enter Subject Name " + i);
Subjects[i] = Console.ReadLine();
}
return Subjects;
}
}
Run Code Online (Sandbox Code Playgroud)