Diskuze: Problem s foreach-om

C# .NET .NET (C# a Visual Basic) Problem s foreach-om American English version English version

Avatar
RooBoo
Člen
Avatar
RooBoo:

zdravim mam taky problem ze mam takýto kod a vypisuje mi chybu ze nevie typ string previes na typ char .. neviete kde je problem ?

List<string> finish = new List<string>();
public string getfin()
        {
            string get="";

            foreach (char c in finish)
            {
                get +=c;
            }
            return get;
        }
 
Odpovědět 13.3.2014 16:07
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na RooBoo
Jan Vargovský:
List<string> finish = new List<string>();
public string getfin()
        {
            return string.Join("", finish);
        }

Jinak problém je v tom, že přetypováváš string na char, má tam být foreach(string c ...)

Editováno 13.3.2014 16:12
 
Nahoru Odpovědět 13.3.2014 16:10
Avatar
RooBoo
Člen
Avatar
Odpovídá na Jan Vargovský
RooBoo:

dakujem .. pomohol si mi

 
Nahoru Odpovědět 13.3.2014 16:18
Avatar
RooBoo
Člen
Avatar
Odpovídá na RooBoo
RooBoo:

A vedel by si mi este pomoct ? dalsi problem mam ze mam vytvoreny List int .. a ked chcem prechadzat List cez foreach tak mmi zahlasi chybu

List<int> List = new List<int>();
public void decode(int number)
        {
            foreach(int c in number)
            {

                List.Add(c);


            }}

foreach by mal prejst cele cislo number a po cisliciach pridat do List ... ale stale my vypisuje chybu : Príkaz foreach nelze použít pro promnenné typu int, protože int neobsahuje verejnou definici GetEnumerator

Editováno 16.3.2014 10:48
 
Nahoru Odpovědět 16.3.2014 10:46
Avatar
Odpovídá na RooBoo
Ondřej Štorc:

Int nelze procházet forechem protože to není pole..

Nahoru Odpovědět 16.3.2014 10:59
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na RooBoo
Jan Vargovský:
foreach (char c in number.ToString())
    List.Add(int.Parse(c.ToString()));
}

nebo

List.AddRange(number.ToString().ToCharArray().Select(z => (int)Char.GetNumericValue(z)));

nebo

List.AddRange(number.ToString().ToCharArray().Select(z => int.Parse(z.ToString())));
 
Nahoru Odpovědět 16.3.2014 11:06
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.