Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Javakurs/Übungsaufgaben/Methoden: Unterschied zwischen den Versionen

K (hat Methoden nach Javakurs2007/Methoden verschoben)
(Kommentare)
 
(23 dazwischenliegende Versionen von 15 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Hinweis:''' Alle in diese Übung verwendeten Klassen findest du auch als Vorgabedateien unter [https://docs.freitagsrunde.org/var/www/javakurs/2007/Methoden.tar https://docs.freitagsrunde.org/var/www/javakurs/2007/Methoden.tar]
+
'''Hinweis:''' Alle in diese Übung verwendeten Klassen findest du auch als Vorgabedateien unter http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/Methoden.tar
  
  
Zeile 7: Zeile 7:
 
* Führe den Code aus und vergleiche das Ergebnis mit deinen Erwartungen.  
 
* Führe den Code aus und vergleiche das Ergebnis mit deinen Erwartungen.  
  
<nowiki>
+
<pre>
class Beispiel {
+
public class Print {
public static void main(String [] arguments) {
+
public static void main(String[] arguments) {
ausgabe(1, "Martin");
+
print(1, "Martin");
ausgabe("Arthur", 2);
+
print(2, "Arthur");
ausgabe(3, "Florian");
+
print(3, "Florian");
ausgabe("Robert", 4);
+
print(4, "Robert");
 
}
 
}
  
static void ausgabe(int i, String string) {
+
public static void print(int zahl, String name) {
System.out.println(i + ": " + string);
+
System.out.println(zahl + ": " + name);
 
}
 
}
 
}
 
}
</nowiki>
+
</pre>
 
 
  
 
== Rückgabewert ==
 
== Rückgabewert ==
Zeile 27: Zeile 26:
 
* Führe den Code jeweils aus und vergleiche das Ergebnis mit deinen Erwartungen.  
 
* Führe den Code jeweils aus und vergleiche das Ergebnis mit deinen Erwartungen.  
  
<nowiki>
+
<pre>
//file: Methoden1.java
+
public class ReturnDouble {
class Methoden1 {
+
public static void main(String[] arguments) {
    public static void main (String[] arguments) {
+
System.out.println(gibMirNeZahl());
        System.out.println( gibMirNeZahl() );
+
}
    }
+
 
   
+
public static double gibMirNeZahl() {
    public static double gibMirNeZahl() {
+
return 15.3;
        return 15.3;
+
}
    }
 
 
}
 
}
 +
</pre>
  
 +
<pre>
 +
public class ReturnBoolean {
 +
public static void main(String[] arguments) {
 +
System.out.println(mathematik(1, 2));
 +
System.out.println(mathematik(1, 5));
 +
System.out.println(mathematik(3, 4));
 +
}
  
//file: Methoden2.java
+
public static boolean mathematik(int argument1, int argument2) {
class Methoden3 {
+
return (argument1 + 5) < (argument2 * 2);
    public static void main (String[] arguments) {
+
}
        System.out.println( mathematik(1, 2) );
 
    }
 
   
 
    public static boolean mathematik(int argument1, int argument2) {
 
        return (argument1 + 5) < (argument2 * 2);
 
    }
 
 
}
 
}
 +
</pre>
  
 +
<pre>
 +
public class ReturnInt {
 +
public static void main(String[] arguments) {
 +
System.out.println("2 + 7 = " + add(2, 7));
 +
System.out.println("0 + 8 = " + add(0, 8));
 +
System.out.println("-7 + 7 = " + add(-7, 7));
 +
}
  
//file: Methoden3.java
+
public static int add(int int1, int int2) {
class Methoden3 {
+
return int1 + int2;
    public static void main (String[] arguments) {
+
}
        System.out.println( mathematik(1, 2) );
 
        System.out.println( mathematik(1, 5) );
 
        System.out.println( mathematik(3, 4) );
 
    }
 
   
 
    public static boolean mathematik(int argument1, int argument2) {
 
        return (argument1 + 5) < (argument2 * 2);
 
    }
 
}
 
 
 
//file: Methoden4.java
 
class Methoden4 {
 
    public static void main (String[] arguments) {
 
        int eineZahl = 2;
 
        System.out.println( mathematik(4, eineZahl) );
 
        eineZahl = 5;
 
        System.out.println( mathematik(2, eineZahl) );
 
        System.out.println( mathematik(eineZahl, 4) );
 
    }
 
   
 
    public static boolean mathematik(int argument1, int argument2) {
 
        return (argument1 + 5) < (argument2 * 2);
 
    }
 
 
}
 
}
</nowiki>
+
</pre>
 
 
 
 
  
  
== Kommentare ==
+
Die Teilaufgabe mit dem Code "Rückgabewert" compiliert nicht.  
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf "bearbeiten" und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)
+
Es kommt folgende Fehlermeldung:
  
<!--
+
2 errors
Als kleine Starthilfe folgt ein Beispiel wie so ein Kommentar formatiert sein könnte. Mit "Vorschau zeigen" kannst du dir ansehen was deine Änderung bewirken würde, ohne wirklich etwas zu ändern.
+
.\ReturnDouble.java:11: error: class ReturnBoolean is public, should be declared in a file named ReturnBoolean.java
Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;)
+
public class ReturnBoolean {
 +
      ^
 +
.\ReturnDouble.java:23: error: class ReturnInt is public, should be declared in a file named ReturnInt.java
 +
public class ReturnInt {
 +
      ^
  
==== Robert ====
+
Wie ich es verstanden habe, müsste ich hier noch zusätzliche "Hilfsprogramme" schreiben?
Na mal schaun ob irgend jemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.
 
-->
 

Aktuelle Version vom 7. März 2014, 10:39 Uhr

Hinweis: Alle in diese Übung verwendeten Klassen findest du auch als Vorgabedateien unter http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/Methoden.tar


Argumente

  • Überlege dir, was der folgende Code macht. Was erwartest du als Ausgabe?
  • Führe den Code aus und vergleiche das Ergebnis mit deinen Erwartungen.
public class Print {
	public static void main(String[] arguments) {
		print(1, "Martin");
		print(2, "Arthur");
		print(3, "Florian");
		print(4, "Robert");
	}

	public static void print(int zahl, String name) {
		System.out.println(zahl + ": " + name);
	}
}

Rückgabewert

  • Überlege dir, was der folgende Code in den folgenden Beispielen macht. Was erwartest du als Ausgabe?
  • Führe den Code jeweils aus und vergleiche das Ergebnis mit deinen Erwartungen.
public class ReturnDouble {
	public static void main(String[] arguments) {
		System.out.println(gibMirNeZahl());
	}

	public static double gibMirNeZahl() {
		return 15.3;
	}
}
public class ReturnBoolean {
	public static void main(String[] arguments) {
		System.out.println(mathematik(1, 2));
		System.out.println(mathematik(1, 5));
		System.out.println(mathematik(3, 4));
	}

	public static boolean mathematik(int argument1, int argument2) {
		return (argument1 + 5) < (argument2 * 2);
	}
}
public class ReturnInt {
	public static void main(String[] arguments) {
		System.out.println("2 + 7 = " + add(2, 7));
		System.out.println("0 + 8 = " + add(0, 8));
		System.out.println("-7 + 7 = " + add(-7, 7));
	}

	public static int add(int int1, int int2) {
		return int1 + int2;
	}
}


Die Teilaufgabe mit dem Code "Rückgabewert" compiliert nicht.

Es kommt folgende Fehlermeldung:

2 errors .\ReturnDouble.java:11: error: class ReturnBoolean is public, should be declared in a file named ReturnBoolean.java public class ReturnBoolean {

      ^

.\ReturnDouble.java:23: error: class ReturnInt is public, should be declared in a file named ReturnInt.java public class ReturnInt {

      ^

Wie ich es verstanden habe, müsste ich hier noch zusätzliche "Hilfsprogramme" schreiben?