Laden...

Forenbeiträge von pata1990 Ingesamt 6 Beiträge

25.11.2015 - 15:49 Uhr

Ich habe mal meinen bisherigen Code angehängt. Wie meinst du das mit iterierst du nicht über die Liste?
In der Liste sind wie unten zu sehen 4 Beliebige Texte welche am Ende dann sortiert ausgegeben werden sollen. Jetzt wollte ich es wie du schon meintest in ein Array kopieren und dann mit Hilfe von BubbleSort sortieren und ausgeben.
(Hat das dann eig überhaupt noch etwas mit IEnumerable und foreach schleife zu tun?)
Sry ich verzweifle grad so ein bisschen an dieser Aufgabe

class Program
    {
        static void Main(string[] args)
        {
            Liste l1 = new Liste();
            l1.Add("Arrrgh");
            l1.Add("Uharrghh");
            l1.Add("Grrr");
            l1.Add("Ugh");

            foreach (Inhalt t in l1)
            {
                Console.WriteLine(t.Text);
            }

            foreach (Inhalt t in l1)
            {
                
            }

            /*Inhalt[] array = new Inhalt[4];
            l1.CopyTo(array);

            Console.WriteLine("Inhalt Array:");
            foreach(Inhalt t in array)
            {
                Console.WriteLine(t.Text);
            }*/


            Console.ReadKey();
        }
    }

    class Liste : IEnumerable
    {
        //Deklaration
        List<Inhalt> l1;
        //Konsturktor
        public Liste()
        {
            l1 = new List<Inhalt>();
        }
        //AddMethode
        public void Add(string t)
        {
            Inhalt insert = new Inhalt(t);
            l1.Add(insert);
        }
        //Indexer
        public string this[string i]
        {
            get
            {
                string s = "nicht gefunden";
                foreach (Inhalt inhalt in l1)
                {
                    if (inhalt.Text == i)
                    {
                        s = inhalt.Text;
                    }
                }
                return s;
            }
        }

        public IEnumerator GetEnumerator()
        {
            foreach (Inhalt t in l1)
            {
                yield return t;
            }

        }

        public void CopyTo(Inhalt[] array);

    }


    class Inhalt
    {
        //Deklarierung
        string text;
        //Properties
        public string Text { get { return text; } }
        //Konstruktor
        public Inhalt(string t)
        {
            text = t;
        }
    }
}
25.11.2015 - 15:28 Uhr

Wenn ich wie in deiner Info beschrieben die CopyTo Methode anwenden möchte.
Habe ich folgenden Code

Innerhalb der Klasse Liste in welcher meine Liste erstellt wird und sich auch die Add Funktion befindet

        public void CopyTo(Inhalt[] array);

und in meiner Main

  Inhalt[] array = new Inhalt[4];
            l1.CopyTo(array);

            Console.WriteLine("Inhalt Array:");
            foreach(Inhalt t in array)
            {
                Console.WriteLine(t.Text);
            }

Nun bringt er mit aber den Fehler > Fehlermeldung:

CopyTo ist nicht als abstrakt extern oder partiell gekennzeichnet und muss daher einen text deklarieren

25.11.2015 - 13:16 Uhr

Aber wie kann ich denn eine Liste mit BubbleSort sortieren?
Das geht doch eig nur mit Arrays oder ?

25.11.2015 - 12:31 Uhr

Bubblesort kenne ich so nur mit int
ist das mit strings auch möglich?

25.11.2015 - 11:56 Uhr

Es muss auf jedenfalls eine foreach Schleife sein die die Liste sortiert.

Mein Aktueller Stand ist dass ich eine Liste angelegt habe welcher ich 4 Elemente mit Hilfe einer Add Funktion ein Wort im string Format zufüge.

Dieses muss nun mit Hilfe einer foreach Schleife sortiert werden. Daran scheitert es aktuell.

25.11.2015 - 11:41 Uhr

Hallo,

ich bin grad am verzweifeln.
Ich benötige eine foreach schleife mit Hilfe von IEnumrable Interface das mir strings in einer Liste der Buchstabenanzahl nach sortiert.
IEnumarable is eher weniger das Problem, komme seid Stunden einfach nicht drauf wie ich diese foreach Schleife implementieren kann.

Vll hat hier ja jemand eine Idee

Mfg