/* 	Static Importing:
		Yksittäisiä metodeita voidaan importoida ohjelmaan komennolla "import static pakkuksen_nimi.luokan_nimi.metodin_nimi". 
		Kokonaisia luokkia voidaan importoida komennolla "import static pakkuksen_nimi.luokan_nimi.*".
		Tästä on se hyöty, että ohjelmakoodissa ei tarvitse viitata metodin sijaintiin pakkauksen ja luokan nimillä vaan ne voidaan jättää pois ja
		käyttää viittaukseen pelkkää metodin nimeä. Tämän toiminnon käyttö tietyissä rajoissa selkeyttää ohjelmakoodia varsinkin jos ollaan importattu 
		pelkkiä yksttäisiä metodeita. Importtaamalla kokonaisia luokkia tilanne voi muuttua päinvastaiseksi, jolloin ohjelmakoodista tulee sekavaa koska
		ei voida tietää missä metodin koodi itseasiassa sijaitsee. Tällöin ohjelmakoodista voi tulla hyvinkin vaikeaselkoista.
		
		Uusi For-loop:
		For -loopin uudella ominaisuudella voidaan selkeyttää ohjelmakoodia tilanteissa joissa sitä käytetään koko arvoalueen läpikäyntiin. Esimerkiksi taulukon 
		läpikäynti voidaan tehdä seuraavasti: for(int i : taulukko) {...}. Tämä käy siis läpi koko taulukon ja suorittaa jokaiselle alkiolle halutut operaatiot.  
		Tämä uusi For -loop tulisikin lukea For each eli jokaiselle. Tämä ei siis sovellu jos haluttaisiin käydä vain osa taulukosta läpi.		
*/


import static java.lang.Math.random;

public class ForLoop {

	public static void main(String[] args){

		// Luodaan kymmenalkioinen int-taulukko
		int[] taulukko = new int[10];


		// Annetaan taulukon alkioille satunnaiset arvot importattua Math-luokan random()-metodia käyttäen
		for (int i = 0; i < 10; i++) 
			taulukko[i] = (int)(10 * random());		// Random() -metodiin ei siis tarvitse viitata luokan nimellä Math.random() juuri static importin ansiosta.
		
		// Käydään taulukko läpi vanhalla tavalla.
		
		for (int i = 0; i < 10; i++) 
			System.out.print(taulukko[i]+"\t");

		// Käydään taulukko läpi Java-version 1.5 tuomalla uudella tavalla
		
		for (int i : taulukko)
			System.out.print(i+"\t");

	}
}