Java týden Java týden
Aprílový black friday tě nenechá v klidu! Až 80 % prémiového obsahu zdarma. Více informací
Pouze tento týden slevy až 80 % na programování v Javě

Diskuze: Pole, vypsat sudé hodnoty přes foreach

C# .NET .NET (C# a Visual Basic) Pole, vypsat sudé hodnoty přes foreach American English version English version

Aktivity (3)
Avatar
Tomáš Hanzelka:23.10.2018 18:54

Zkrátka to vypíše, ale spadne.

Zkusil jsem: Přes for, ale ten funguje. :)

Chci docílit: Snažím se vypsat sudé hodnoty pole přes foreach.

 
Odpovědět 23.10.2018 18:54
Avatar
patrik.valkovic
Šéfredaktor
Avatar
Odpovídá na Tomáš Hanzelka
patrik.valkovic:23.10.2018 18:58

Proměnná i je prvek v poli, nikoliv index do pole.

Nahoru Odpovědět  +6 23.10.2018 18:58
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Jirka
Člen
Avatar
Odpovídá na Tomáš Hanzelka
Jirka:23.10.2018 19:17

V Javě:

package itn.forum;

public class Array {
public static void main(String[] args) {
        int[] arr = new int[] {1, 2, 3, 4};

        for(int i : arr) {
                if(i % 2 == 0) {
                        System.out.println(i);
                }
        }
}
}

Výstup:
2
4

Nahoru Odpovědět 23.10.2018 19:17
Kdo nic nedělá, nic nezkazí.
Avatar
Mirek Slouka
Člen
Avatar
Odpovídá na Tomáš Hanzelka
Mirek Slouka:24.10.2018 9:55

Asi jsi úplně nepochopil cyklus foreach. Foreach je v podstatě for, jen ti automaticky přiřadí hodnotu z pole do tvé definované proměnné. Skrytý iterátor začíná od 0 a každým průchodem se interně zvedne o 1, dokud nenarazí na poslední index v poli. Takže v první iteraci se do i přiřadí i = numbers[0], v další iteraci numbers[1] a tak dál...

int[] numbers = new int[5] { 1, 2, 3, 4, 5 };
            foreach (int i in numbers)
            {
                if ((i % 2) == 0)
                    Console.Write("{0} ", i);
            }
            Console.ReadKey();
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +3 24.10.2018 9:55
I can explain it to you, but I can't understand it for you.
Avatar
Tomáš Hanzelka:24.10.2018 17:49

už rozumím, děkuji

 
Nahoru Odpovědět 24.10.2018 17:49
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 5 zpráv z 5.