Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Java
You last visited: Today at 02:23

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Mein erstes Java Programm!! :D

Discussion on Mein erstes Java Programm!! :D within the Java forum part of the Coders Den category.

Closed Thread
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2015
Posts: 44
Received Thanks: 8
Mein erstes Java Programm!! :D

Hallo liebe Community,

ich befinde mich seit kurzen auch in der Programmierspalte der Computer Sektion.

Hier habe ich mal ein kleines Programm geschrieben. Bitte bedenkt, dass ich erst seit September begonnen habe richtig zu programmieren und zuvor so gut wie keine Kenntnisse vorhanden waren.

Code:
import java.sql.Date;
import java.util.Calendar;

import javax.swing.JOptionPane;


public class BigProjectClass1 {

	@SuppressWarnings("deprecation")
	public static void main(String[] args) {
		JOptionPane.showMessageDialog(null, "Herzlich-Willkommen auf meinem kleinen Tool.\ndieses "
				+ "Programm wurde in Java geschrieben\nüber ein Feedback freue ich mich sehr\nwie du mich kontaktieren "
				+ "kannst gehe auf Copyright!");            
		
		
		String input=JOptionPane.showInputDialog(null, "Du kannst unter verschiedenen Modi auswählen\n"
				+ "\nWähle [1] für Taschenrechner"
				+ "\nWähle [2] für Datum und Uhrzeit"
				+ "\nWähle [3] für Copyrights.");
		
		if(input.equals("1")) {
		   
			JOptionPane.showMessageDialog(null, "Du befindest dich nun im Taschenrechnermenü.");
			String input2=JOptionPane.showInputDialog(null, "Bitte gebe nun die erste Zahl ein.");
			String input3=JOptionPane.showInputDialog(null, "Bitte gebe nun die zweite Zahl ein.");
			JOptionPane.showMessageDialog(null, "Deine Zahlen sind:" + input2 +" und "+ input3);
			String input4=JOptionPane.showInputDialog(null, "Was möchtest du mit diesen Zahlen machen\n"
					+ "\nWähle Addieren, Subtrahieren, Dividieren oder Multiplizieren.");
			
			if (input4.equals("Addieren")){
				
				int ersteZahlRechner = Integer.parseInt(input2);
				int zweiteZahlRechner = Integer.parseInt(input3);
				
				JOptionPane.showMessageDialog(null, (ersteZahlRechner + zweiteZahlRechner));
				
				
				
			}
			
			if (input4.equals("addieren")){
				
				int ersteZahlRechner = Integer.parseInt(input2);
				int zweiteZahlRechner = Integer.parseInt(input3);
				
				JOptionPane.showMessageDialog(null, (ersteZahlRechner + zweiteZahlRechner));
				
			}
			
			if (input4.equals("Subtrahieren")){
				
				int ersteZahlRechner = Integer.parseInt(input2);
				int zweiteZahlRechner = Integer.parseInt(input3);
				
				JOptionPane.showMessageDialog(null, (ersteZahlRechner - zweiteZahlRechner));
			
			}
			
			if (input4.equals("subtrahieren")){
				
				int ersteZahlRechner = Integer.parseInt(input2);
				int zweiteZahlRechner = Integer.parseInt(input3);
				
				JOptionPane.showMessageDialog(null, (ersteZahlRechner - zweiteZahlRechner));
			}
			
			if (input4.equals("Dividieren")){
				
				int ersteZahlRechner = Integer.parseInt(input2);
				int zweiteZahlRechner = Integer.parseInt(input3);
				
				JOptionPane.showMessageDialog(null, (ersteZahlRechner / zweiteZahlRechner));
			}
			
			if (input4.equals("dividieren")){
				
				int ersteZahlRechner = Integer.parseInt(input2);
				int zweiteZahlRechner = Integer.parseInt(input3);
				
				JOptionPane.showMessageDialog(null, (ersteZahlRechner / zweiteZahlRechner));
			}
			
			if (input4.equals("Multiplizieren")){
				
				int ersteZahlRechner = Integer.parseInt(input2);
				int zweiteZahlRechner = Integer.parseInt(input3);
				
				JOptionPane.showMessageDialog(null, (ersteZahlRechner * zweiteZahlRechner));
			}
			
			if (input4.equals("multiplizieren")){
				
				int ersteZahlRechner = Integer.parseInt(input2);
				int zweiteZahlRechner = Integer.parseInt(input3);
				
				JOptionPane.showMessageDialog(null, (ersteZahlRechner * zweiteZahlRechner));
			}
			
			
			
			
		}
		
		if (input.equals("2")){
			Calendar cal = Calendar.getInstance ();
			  JOptionPane.showMessageDialog(null, "Datum: " + cal.get( Calendar.DAY_OF_MONTH ) +
                      "." + (cal.get( Calendar.MONTH ) + 1 ) +
                      "." + cal.get( Calendar.YEAR ) );

			  JOptionPane.showMessageDialog(null,"Uhrzeit: " + cal.get( Calendar.HOUR_OF_DAY ) + ":" +
                      cal.get( Calendar.MINUTE ) + ":" +
                      cal.get( Calendar.SECOND ) + ":" +
                      cal.get( Calendar.MILLISECOND ) );
		}
		
		if (input.equals("3")){
			
			JOptionPane.showMessageDialog(null, "Du befindest dich im Copyright Menü.\n\nDer Code wurde von Pascal alias TheRealLenon selbst erstellt."
					+ "\nDieses Programm wird für einen Download zur Verfügung gestellt.\nJegliche Veränderung und Verbreitung des Codes wird nicht geduldet.\nBesseres fällt mir nicht ein."
					+ "\n	Ich Hoffe ihr habt Spaß mit meinem Progrann!!");
		}

	}

}
Ich Hoffe euch hat mein Code gefallen.

Bitte schreibt mir Verbesserungsvorschläge oder Ideen, da mich die Sucht langsam Gepackt hat und es extrem Spaß macht, solche Kleinigkeiten zu programmieren.

Mit freundlichen Grüßen



TheRealLenon
TheRealLenon is offline  
Old 10/17/2015, 12:03   #2
Moderator


 
elite*gold: 558
Join Date: Feb 2010
Posts: 6,544
Received Thanks: 1,424
Eine Sache solltest du dir gleich merken: Möglichst wenig unnötigerweise doppelten Code in deinem Programm haben.

Stell dir vor, du veränderst etwas in "Addieren", vergisst dann aber "addieren" auch anzupassen. Dann suchst du ewig nach dem Fehler, weil du einfach nicht damit rechnest.

Stell dir vor, du möchtest jetzt lieber mit Kommazahlen (z.B. double) rechnen. Dann veränderst du es in "addieren", vergists es aber bei den anderen drei Rechenarten. Dann kann es sein, dass du wieder am rätseln bist warum da das Komma fehlt.
ComputerBaer is offline  
Old 10/17/2015, 12:59   #3
 
elite*gold: 0
Join Date: Oct 2015
Posts: 44
Received Thanks: 8
Wie soll ich das mit dem Addieren addieren verstehen?

Denn wenn ich in dem Ausgeführtem Programm addieren eingebe und das im Code weggelassen habe, öffnet sich kein neues Fenster. Sprich das Programm läuft nicht weiter..
TheRealLenon is offline  
Old 10/17/2015, 13:48   #4
 
elite*gold: 0
Join Date: Jul 2009
Posts: 211
Received Thanks: 137
Anstatt das hier:
Kannst du folgendes machen:

Dadurch ist deine Eingabe nicht mehr CaseSensitiv sowas wie AddIeReN ist dann auch möglich wenn du das nicht haben willst sondern nur Addieren und addieren kannst du beides auch in eine if packen mit dem logischen "Oder" Operator


Das x || y heißt so viel wie entweder x muss erfüllt sein ODER y.
PHP Code:
if (input4.equals("addieren") || input4.equals("Addieren") ) 
Das sagt also aus, dass die Eingabe entweder addieren oder Addieren sein muss.


Weitere Verbersserungsforschläge währen folgende:

Du kannst das parsen der Zahlen schon vorher machen also so in etwa:


Dann kannst du dir noch überlegen ob du nicht else if verwenden willst. Das Programm muss dann nicht alle ifs prüfen sondern überpringt die anderen sobald eine zutrifft. Wenn die eingabe addieren war wird nur die if von addieren geprüft die anderen werden direkt übersprungen. Wenn die eingabe subtrahieren ist, wird erst addieren geprüft, dann subtrahieren und da das wahr ist, werden alle danach übersprungen.




Dann kannst du dir noch überlegen Kommawerte zuzulassen. Sofern du diese kennst also ein double und kein Int


Das letzte was mir noch spontan einfällt wäre eine Fehlerbehandlung falls man versucht soetwas wie "abd" als Zahl einzugeben. Da ich aber nicht weiß ob du dich mit Fehlerbehandlung schon auseinander gesetzt hast, lass ich das. Wenn du dazu ein Beispiel haben willst sag bescheid.

Eine kleinigkeit habe ich aber noch. Gewöhn dir am besten englische Variablen-Namen an. Das ist so der de facto Standard .
Mysthik is offline  
Old 10/17/2015, 14:12   #5
Moderator


 
elite*gold: 558
Join Date: Feb 2010
Posts: 6,544
Received Thanks: 1,424
Ich hatte jetzt bei meinen beiden Verbesserungsvorschlägen deinen unveränderten Code als Grundlage genommen, deshalb fehlt die erste Verbesserung im zweiten Code. Weil ihr es scheinbar beide nicht gesehen habt, schreibe ich es hier noch einmal.

Wie ich bereits oben gesagt habe:
Code:
if (input4.equalsIgnoreCase("addieren"))
Dann ist es vollkommen egal wie das geschrieben wurde.
Addieren -> true
addieren -> true
AdDiErEn -> true
aDdIeReN -> true

Es hat den selben Effekt wie das von Mysthik (siehe nächsten Code), ist allerdings kürzer.
Code:
input4 = input4.toLowerCase();
if (input4.equals("addieren"))
Für " addieren " (Leerzeichen vorne/hinten) müssten man es noch trimmen.
Code:
input4 = input4.trim();
if (input4.equalsIgnoreCase("addieren"))
ComputerBaer is offline  
Old 10/17/2015, 15:32   #6
 
elite*gold: 0
Join Date: Oct 2015
Posts: 44
Received Thanks: 8
Okay Vielen Dank, für die schnelle Hilfe.

#Vote4Close
TheRealLenon is offline  
Closed Thread


Similar Threads Similar Threads
Mein erstes Programm mit AutoIt
06/13/2011 - AutoIt - 6 Replies
Hey leute, Ich bin seit jetzt 5Monaten neben bei und sehr wenig an autoit dran. Aber es kommen immer wider sprünge die mir sagen: Wie cool were es bots zu schreiben. Deswegen habe ich mich mit der hilfe von BlackHybrid. Also hier mall der Code:
Mein erstes Programm^^
10/19/2010 - Off Topic - 16 Replies
Hi Leute wusste nicht in welche sektion das gehört also habs hierhin geschrieben Nun seit heute habe ich mich fürs programmieren interessiert und hab mir ein einsteiger tut auf youtube angeguckt Dort konnt ich sehen was ich alles mit einem .TXT bzw .bat datei so machen kann Und dann hab ich einfach mal ein "Programm" erstellt was 5 Befehle ausführen kann Ich wollte eure meinung hören und Tipps was ich verbessern kann oder was für befehle ich einbauen könnte also dann ma los wie...
Mein erstes Programm
03/07/2010 - AutoIt - 4 Replies
Also erstmal Hi an alle ich bin Miro (Miroslav) Ich habe mir vorgenommen AutoIt zu lernen. Und wollte mein erstes Programm schreiben hab mich schon bisschen Informiert und hättet ihr vielleicht eine Idee was für ein Programm ich als erstes schreiben könnte? Und jetz kommt net mit ner einfachen MsgBox und diesem HelloWorld ;) Freue mich über viele Antworten ;)
Mein erstes Programm mit VB
01/10/2010 - Off Topic - 16 Replies
So wir haben nun eine Homepage: www.Steffsoft.tk Viel Spaß^^



All times are GMT +2. The time now is 02:23.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.