Java (II) - 2. lekcia
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Java (II) - 2. lekciaJava (II) - 2. lekcia

 

Java (II) - 2. lekcia

Google       Google       7. 6. 2006       29 676×

Obsah druhej lekcie:

  • Vvetvenie programu
  • Cykly
  • Operátory
  • Úloha č. 2

Reklama
Reklama

Vzhľadom na to, že väčšina vecí uvedených v tejto lekcii je identická s C/C++, tak uvediem len základné informácie a zdrojový kód, poprípade link na kurz C++ s danou problematikou.

Vetvenie programu

Java podporuje dva základné typy vetvenia programu, tak ako aj C/C++, čiže if/else a switch.


public class Test {
	private int cislo = 5;
	
	// metoda na zistenie hodnoty premennej cislo
	public int zistiCislo() {
		return cislo;
	}
	
	// metoda na nastavenie hodnoty premennej cislo
	public void nastavCislo(int noveCislo) {
		cislo = noveCislo;
	}
	
	public static void main(String[] args) {
		Test mojTest = new Test();

		// vetvenie if/else if/else
		if(mojTest.zistiCislo() < 5)
			System.out.println("Cislo je mensie ako 5.");
		
		else if(mojTest.zistiCislo() == 5) {
			/*
			 * vsimnite si System.out.print nedava enter (\n)
			 * na koniec riadku na rozdiel od System.out.println
			 */
			System.out.print("Cislo sa rovna ");
			System.out.println("5.");
		}
		
		else
			System.out.println("Cislo je vacsie ako 5.");
		
		// nastavenie premennej cislo na hodnotu 10
		mojTest.nastavCislo(10);
		
		// vetvenie switch
		switch(mojTest.zistiCislo()) {
			case 5:
				System.out.println("Cislo sa rovna 5.");
				break;
			default:
				System.out.print("Cislo sa nerovna 5.");
				break;
		}
    }
}
Vetvenie v C++.

Cykly

Tie isté ako v C/C++ – for, do–while a while.


public class Test {
	public static void main(String[] args) {
		
		// cyklus for
		for(int i = 1; i <= 10; i++) {
			System.out.println(i);
		}
		
		// dva prazdne riadky
		System.out.println();
		System.out.println();
		
		// cyklus do-while
		int i = 1;
		do {
			System.out.println(i);
			i++;
		} 
		while(i <= 10);
		
		// dva prazdne riadky pomocou "\n"
		System.out.print("\n\n");
		
		// cyklus while
		i = 1;
		while(i <= 10) {
			System.out.println(i);
			i++;
		}
    }
}
Cykly v C++.

Operátory

Operátory delíme podľa počtu operandov na unárne (pracujú len s jedným operandom, napr. negácia) a binárne (pracujú s dvoma operandmi, napr. log. súčin). Základné rozdelenie operátorov:

Aritmetické operátory

Operátor Názov Funkcia
+ sčítanie operand + operand
odčítanie operand − operand
* násobenie operand * operand
/ delenie operand / operand
% modulus (zvyšok po delení) operand % operand

Logické operátory

Operátor Názov Funkcia
&& (AND) logický súčin (a zároveň) operand && operand
|| (OR) logický súčet (alebo) operand || operand
! (NOT) negácia ! operand

Relačné operátory

Operátor Názov Funkcia
< menšie operand1 < operand2
<= menšie alebo rovné operand1 <= operand2
> väčšie operand1 > operand2
>= väčšie alebo rovné operand1 >= operand2
== rovné operand1 == operand2
!= nerovné operand1 != operand2

Link na operátory.


public class Test {
	private int operand1;
	private int operand2;
	private boolean operand3;
	private boolean operand4;
	
	// zisti hodnotu premennej operand1
	public int zistiOperand1() {
		return operand1;
	}
	
	// nastavi hodnotu premennej operand1
	public void nastavOperand1(int novyOperand1) {
		operand1 = novyOperand1;
	}
	
	// zisti hodnotu premennej operand2
	public int zistiOperand2() {
		return operand2;
	}
	
	// nastavi hodnotu premennej operand2
	public void nastavOperand2(int novyOperand2) {
		operand2 = novyOperand2;
	}
	
	// zisti hodnotu premennej operand3
	public boolean zistiOperand3() {
		return operand3;
	}
	
	// nastavi hodnotu premennej operand3
	public void nastavOperand3(boolean novyOperand3) {
		operand3 = novyOperand3;
	}
	
	// zisti hodnotu premennej operand4
	public boolean zistiOperand4() {
		return operand4;
	}
	
	// nastavi hodnotu premennej operand4
	public void nastavOperand4(boolean novyOperand4) {
		operand4 = novyOperand4;
	}
	
	
	public static void main(String[] args) {
		Test mojTest = new Test();
		mojTest.nastavOperand1(7);
		mojTest.nastavOperand2(5);
		
		System.out.println("Aritmeticke operatory\n");
		
		System.out.print(mojTest.zistiOperand1() + " + " + mojTest.zistiOperand2());
		System.out.println(" = " + (mojTest.zistiOperand1() + mojTest.zistiOperand2()));
		
		System.out.print(mojTest.zistiOperand1() + " - " + mojTest.zistiOperand2());
		System.out.println(" = " + (mojTest.zistiOperand1() - mojTest.zistiOperand2()));
		
		System.out.print(mojTest.zistiOperand1() + " * " + mojTest.zistiOperand2());
		System.out.println(" = " + (mojTest.zistiOperand1() * mojTest.zistiOperand2()));
		
		System.out.print(mojTest.zistiOperand1() + " / " + mojTest.zistiOperand2());
		System.out.println(" = " + (mojTest.zistiOperand1() / mojTest.zistiOperand2()));
		
		System.out.print(mojTest.zistiOperand1() + " % " + mojTest.zistiOperand2());
		System.out.println(" = " + (mojTest.zistiOperand1() % mojTest.zistiOperand2()));
		
		System.out.println("\nLogicke operatory\n");
		
		mojTest.nastavOperand3(true);
		mojTest.nastavOperand4(true);
		
		if((mojTest.zistiOperand3() && mojTest.zistiOperand4()) == true)
			System.out.println("Obidva operandy su nastavene na hodnotu true.");
		else
			System.out.println("Obidva operandy niesu nastavene na hodnotu true");
		
		mojTest.nastavOperand3(true);
		mojTest.nastavOperand4(false);
		
		if((mojTest.zistiOperand3() || mojTest.zistiOperand4()) == true)
			System.out.println("Aspon jeden z operandov je nastaveny na hodnotu true.");
		else
			System.out.println("Ani jeden operand nieje nastaveny na hodnotu true");
		
		if(!mojTest.zistiOperand3() == true)
			System.out.println("Operand3 je nastaveny na hodnotu true.");
		else
			System.out.println("Operand3 nieje nastaveny na hodnotu true.");
		
		System.out.println("\nRelacne operatory\n");
		
		mojTest.nastavOperand1(100);
		
		if(mojTest.zistiOperand1() > 100)
			System.out.println("Operand1 > " + 100);
		if(mojTest.zistiOperand1() >= 100)
			System.out.println("Operand1 >= " + 100);
		if(mojTest.zistiOperand1() == 100)
			System.out.println("Operand1 == " + 100);
		if(mojTest.zistiOperand1() < 100)
			System.out.println("Operand1 < " + 100);
		if(mojTest.zistiOperand1() <= 100)
			System.out.println("Operand1 <= " + 100);
		if(mojTest.zistiOperand1() != 100)
			System.out.println("Operand1 != " + 100);
    }
}

Úloha č. 2

Vyskúšajte všetky uvedené príklady a skúste zmeniť aj hodnoty premenných. Všetky problémy a veci týkajúce sa Javy a tohto kurzu sa budú riešiť na fóre v kategórii Java.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Autor je studentom FEI STU v Bratislave, odbor Aplikovana Informatika a vo svojom volnom case sa zaobera hlavne programovanim a rad sportuje.
Web    

Nové články

Reklama
Reklama
Obrázek ke článku Mobilní datový provoz vzroste sedmkrát.

Mobilní datový provoz vzroste sedmkrát.

Už v roce 2021 bude mít více obyvatel zeměkoule mobilní telefon (5,5 miliardy) než bankovní účet (5,4 miliardy), tekoucí vodu (5,3 miliardy) nebo pevnou telefonní linku (2,9 miliardy). Vyplývá to z analytické studie Cisco Visual Networking Index (VNI) Global Mobile Data Traffic Forecast (2016 to 2021). Analytici také předpovídají, že se tento výrazný růst, spolu s rozmachem chytrých telefonů a připojení do internetu věcí promítne i do celkového objemu přenesených mobilních dat. Studie říká, že do roku 2021 vzroste sedminásobně, k čemuž přispěje i zvyšování přenosové rychlosti sítí a nárůst sledování videa na mobilních zařízeních.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý