Реализовать метод который принимает массив строк и возвращает перечисление

Реализуйте метод GetUsers, который принимает массив строк и возвращает перечисление пользователей. Элементы исходного массива представляют собой строки в формате "Имя_пользователя", затем ровно один пробел, а потом "Возраст пользователя". Например: "Иосиф 26".

class User
{
    public string Name { get; set; }

    public int Age { get; set; }
    public User(string name, int age)
    {
        Name = name;
        Age = age;
    }
}

Пример проверочного кода

var list = new string[5] { "Иосиф 26", "Алексей 33", "Николай 32", "Наталья 31", "Роксана 30" };
var users = GetUsers(list);

foreach (var user in users)
{
    Console.WriteLine("Пользователь {0}, возраст {1}", user.Name, user.Age);
}

пробовал реализовать данный метод таким образом,

static User GetUsers(string[] input)
{
            
    var list = new List<string[]>();
            
    foreach(var user in input) 
    {
        list.Add(user.Split());
    }   
}

Не очень понимаю что нужно сделать чтобы разделить этот список и через метод селект преобразовать в User

Дошел до чего-то такого, но все равно фигня какая-то

static IEnumerable<User> GetUsers(string[] input)
        {
            List<User> users = new List<User>();
           for(int i =0; i < input.Length; i++) 
            {
                var userArr = input[i].Split();
                for(int j = 0; j< userArr.Length; i++) 
                {
                    users.Add(new User(userArr[j], Convert.ToInt32(userArr[j + 1])));
                }
            }
            return users;
        }

Ответы (1 шт):

Автор решения: Дима Рейхц

Получилось так:

static IEnumerable<User> GetUsers(string[] input)
{
    List<User> users = new List<User>();
    foreach(var item in input) 
    {
        var d = item.Split();
        users.Add(new User(d[0], Convert.ToInt32(d[1])));
    }
    return users;
}
→ Ссылка