Печать списка элементов - PullRequest
       7

Печать списка элементов

8 голосов
/ 25 декабря 2009
List<string> list = new List<string>();    
        list.Add("A");
        list.Add("B");

List<string> list1 = new List<string>();    
        list.Add("a");
        list.Add("b");


    for (int i = 0; i < list.Count; i++)
    {
        // print another list items.
        for (int j = 0; j < list1.Count; j++)
        {
            Console.WriteLine("/" + list[i] + "/" + list1[j]);
        }

    }

Я хочу написать код string tmpS =+ list[i];, чтобы присоединиться к следующему элементу списка вместе.

затем напечатайте tmpS

но ошибка компиляции CS0023: оператор '+' нельзя применить к операнду типа 'string'.

Как распечатать все пункты ниже. (Любой вид в порядке)

Aa Ab Aab аба AB аба уток ABAB ABBA В Ba Bb Бабы BBA

(Номер заглавных букв не поменяется местами. Маленькие символы следует поменять местами. Всегда следуйте номерам заглавных букв. Добавляйте маленькие символы)

Ответы [ 3 ]

3 голосов
/ 25 декабря 2009

Это += не =+.

Но Вы все равно должны использовать StringBuilder.

3 голосов
/ 25 декабря 2009

это заставляет меня долгое время не работать над чисто алгоритмической задачей!

Эта программа должна помочь:

class Program
{
    static void Main(string[] args)
    {
        List<string> uppers = new List<string>();
        uppers.Add("A");
        uppers.Add("B");

        List<string> lowers = new List<string>();
        lowers.Add("a");
        lowers.Add("b");

        List<string> combinedUppers = GetCombinedItems(uppers);
        List<string> combinedLowers = GetCombinedItems(lowers);
        List<string> combinedUppersLowers = GetCombinedList(combinedUppers, combinedLowers);

        foreach (string combo in combinedUppersLowers)
        {
            Console.WriteLine(combo);
        }

        Console.Read();
    }

    static private List<string> GetCombinedItems(List<string> list)
    {
        List<string> combinedItems = new List<string>();

        for (int i = 0; i < list.Count; i++)
        {
            combinedItems.Add(list[i]);

            for (int j = 0; j < list.Count; j++)
            {
                if (list[i] != list[j])
                {
                    combinedItems.Add(String.Format("{0}{1}", list[i], list[j]));
                }
            }
        }

        return combinedItems;
    }

    static private List<string> GetCombinedList(List<string> list1, List<string> list2)
    {
        List<string> combinedList = new List<string>();

        for (int i = 0; i < list1.Count; i++)
        {
            combinedList.Add(list1[i]);

            for (int j = 0; j < list2.Count; j++)
            {
                combinedList.Add(String.Format("{0}{1}", list1[i], list2[j]));
            }
        }

        for (int i = 0; i < list2.Count; i++)
        {
            combinedList.Add(list2[i]);

            for (int j = 0; j < list1.Count; j++)
            {
                combinedList.Add(String.Format("{0}{1}", list2[i], list1[j]));
            }
        }

        return combinedList;
    }
}

С уважением.


Эта программа дает вам такой вывод:

A Aa Aab Ab аба AB аба ABAB уток ABBA В Ba Бабы Bb BBA BA блеять BÀAB Бабы ромовая баба аА аАВ аВ аба аб аба ABAB уток ABBA б ЪА Бабы ЬВ BBA ба блеять BÀAB Бабы БАБА

3 голосов
/ 25 декабря 2009

Это пахнет домашней работой.

List<string> list = new List<string>();    
list.Add("A");
list.Add("B");

List<string> list1 = new List<string>();    
list.Add("a");
list.Add("b");

string xxx = "";
for (int i = 0; i < list.Count; i++)
{
    xxx += list[i];
    Console.WriteLine(xxx);

    // print another list items.
    for (int j = 0; j < list1.Count; j++)
    {
        Console.WriteLine("/" + list[i] + "/" + list1[j]);
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...