如何在我的列表中删除随机字符串名称并打印删除的名称?



我在这里试了好几个小时的代码片段当我运行代码时,它只删除索引,我想删除名称并打印删除的名称

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Player : MonoBehaviour
{
public List<string> names = new List<string>();
void Start()
{
foreach (var name in names)
{
Debug.Log(name);
}
}
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.Space))
{
int index = Random.Range(0, names.Count);
names.Remove(names[index]);
Debug.Log("Removed: " + names[index]);
}
}
}

如果您有一个随机索引,那么首先将名称保存到一个变量中,然后使用相同的索引从列表中删除项目

//Example names = { "suleiman", "Jon Skeet", "Prasad T"} & index = 2;
var nameTobeRemove = names[index];  //"Prasad T"
names.RemoveAt(index);  // "Prasad T" removed
Console.WriteLine($"Removed name : {nameTobeRemove}");  //"Removed name :Prasad T"
Console.WriteLine($"New List : {string.Join(", ", names)}"); // New List : suleiman, Jon Skeet

你的代码中的问题是,你在移除之前没有保存name,我上面的解决方案做到了这一点。它保存name,它将删除到一个变量。

相关内容

  • 没有找到相关文章