Hier werden verschiedene Zeichenketten verglichen, also kommt ungleich heraus
class Zeichenketten{ public static void main(String[] args){ String s1="s1"; String s2="s2"; if (s1==s2 ) System.out.println("gleich"); else System.out.println("ungleich"); System.out.println(s1+" "+s2); } }
Hier werden gleiche Zeichenketten verglichen, also kommt gleich heraus
class Zeichenketten{ public static void main(String[] args){ String s1="s1"; String s2="s2"; if (s1==s2 ) System.out.println("gleich"); else System.out.println("ungleich"); System.out.println(s1+" "+s2); } }
Hier werden bei Eingabe vom Parameter "s1" gleiche Zeichenketten verglichen, es kommt trozdem ungleich heraus.
Der Compiler ist nicht in der Lage, vorherzusehen, dass der Benutzer s1 als Wert übergibt.
class Zeichenketten{ public static void main(String[] args){ String s1="s1"; String s2=args[0]; if (s1==s2 ) System.out.println("gleich"); else System.out.println("ungleich"); System.out.println(s1+" "+s2); } }
Deshelb bei Zeichenketten equals verwenden:
class Zeichenketten{
public static void main(String[] args){
String s1="s1";
String s2=args[0];
if (s1.equals(s2) )
System.out.println("gleich");
else System.out.println("ungleich");
System.out.println(s1+" "+s2);
}
}
public class GameOfLife { boolean[][] feld = { { false, false, false, false, false }, { false, false, true, false, false }, { false, false, true, false, false }, { false, false, true, false, false }, { false, false, false, false, false } }; public static void main(String[] args) { GameOfLife myGame = new GameOfLife(); for (int i = 0; i < 10; i++) { myGame.nextGeneration(); myGame.print(); System.out.println(); } } void print() { for (int i = 0; i < feld.length; i++) { for (int j = 0; j < feld[i].length; j++) { if (feld[i][j] == true) System.out.print("o "); else System.out.print(". "); } System.out.println(); } } void nextGeneration() { boolean[][] pregen= new boolean[feld.length][feld[0].length]; for (int i=0;i< feld.length ;i++ ) { for (int j=0;j< feld[0].length ;j++ ) { pregen[i][j]= feld[i][j]; } // end of for } // end of for for (int i=1;i< pregen.length-1 ;i++ ) { for (int j=1;j< pregen[0].length-1 ;j++ ) { int alive=0; // Summe der lebenden Nachbarn des Elements i,j berechnen for (int k=i-1;k<= i+1 ;k++ ) { for (int l=j-1;l<=j+1 ; l++) { if (pregen[k][l] && !((i==k) && (j==l)) ) { alive++; } // end of if } // end of for } // end of for //Zelle manipulieren nach Anzahl der lebenden Nachbarn switch (alive) { case 2 : break; case 3 : feld[i][j] = true; break; default: feld[i][j] = false; } // end of switch } } } }
class Person{
private int alter;
private String name;
private int tag, monat, jahr;
private static int anzahl;
public void drucken(){
System.out.println(name +" "+ alter+" "+ tag+"."+monat+"."+jahr);
}
public Person(String name, int alt, int tag, int monat, int jahr){
this.name=name;
alter = alt; this.tag=tag; this.monat=monat; this.jahr=jahr;
anzahl++;
}
public Person(){
anzahl++;
}
public int getAlter(){
return this.alter;
}
public void getAnzahl(){
System.out.println(anzahl);
}
public static void main(String[] args){
Person person= new Person("Hans",34,1,5,1980);
/* person.alter= 34;
person.name= "Hans";
person.tag = 1;
person.monat =5;
person.jahr = 1980; */
person.drucken();
//System.out.println(person);
Person person2= new Person();
//person2=person;
//System.out.println(person2);
System.out.println(person.getAlter());
person.getAnzahl();
person2.getAnzahl();
String z = 7 + "3";
double zahl= 3 + 4.5;
long langezahl = (long) 4;
try {
int zahl2 = 1 / 0;
} catch(ArithmeticException e) {
System.out.println("Fehler: " + e);
}
finally {
} // end of try
System.out.println("Programmende");
}
}
public class Summierer {
public static void main(String[] args) {
Summierer summierer = new Summierer();
int startWert = Integer.parseInt(args[0]);
System.out.println("Ergebnis mit for-Schleife: "
+ summierer.forSumme(startWert));
System.out.println("Ergebnis kleiner Gauss: "
+ summierer.kleinerGauss(startWert));
System.out.println("Ergebnis rekursiv: "
+ summierer.rekursiveSumme(startWert));
}
int forSumme(int startWert) {
int summe=0;
for (int i=1; i<= startWert ; i++) {
summe= summe+i;
} // end of for
return summe;
}
int rekursiveSumme(int startWert) {
if (startWert<1) {
return 0;
}
else {
return startWert+ rekursiveSumme(startWert-1);
} // end of if-else
}
int kleinerGauss(int startWert) {
return startWert * (startWert+1) / 2;
}
}