Il ya un certain nombre de façons dont vous pouvez aller sur la création d' un programme de calcul en Java. Cet article propose une mise en œuvre de calculatrice qui va effectuer des opérations lorsqu'il est fourni avec une chaîne contenant deux opérateurs et une opération (par exemple, "2 + 2") , avec une méthode principale simple à fournir une application de calculatrice de la console. Toutefois, ce programme peut être facilement importé dans une application Swing ou AWT basé ou toute autre application dans laquelle une déclaration arithmétique doit être interprétée d'une chaîne. Choses que vous devez
Java
éditeur de texte ou Java environnement de développement intégré (IDE)
Afficher plus Instructions
1
créer un nouveau package Java appelé calculatrice . Si vous choisissez de le faire avec un IDE dédié, il y aura probablement une option pour cela dans le menu " \\ fichier " \\ . Sinon, il suffit de créer un dossier quelque part sur votre disque dur appelé «Calculatrice ».
2
créer le « Calculator.java \\ " class \\ et de créer un squelette de classe de celui-ci . Encore une fois, si vous utilisez un IDE , il ya probablement une option pour faire cela automatiquement , mais si vous choisissez d'utiliser un éditeur de texte , il suffit de créer un fichier texte vide avec \\ " . Java \\ " pour l'extension de fichier et écrire le suivant à l'intérieur :
package calculatrice GO
calculatrice public class { }
3
déclarer certaines variables . Vous voudrez deux \\ " BigDecimals \\" ( qui doivent être importés à partir de la " java.math \\" paquet \\ ) pour vos opérandes et un entier pour le type d'opération , ainsi que des constantes pour représenter les opérations possibles . Modifier votre fichier de sorte qu'il ressemble à ceci:
/>
calculatrice forfait GO
importation java.math.BigDecimal
Calculatrice public class {
BigDecimal operatorOne
GO BigDecimal operatorTwo
GO Entier OperationType
GO
Entier static final publique Add = 0
GO SUB nombre entier static final publics = 1
GO public final DIV Entier statique = 2
GO finale MULT Entier public static = 3
GO }
4
déclarer des méthodes . Cette classe va utiliser trois méthodes. Même si elle peut probablement vous en tirer avec un seul , ayant de nombreux courts , faciles à comprendre les méthodes , c'est mieux que d'avoir moins de méthodes , plus complexes. Les méthodes seront appelées "booléen parseString (String s) », « determineOperationType Entier privé (String s) " et " performCalculation BigDecimal ()" .
Le \\ " parseString \\" ; méthode recevra une chaîne qui représente une opération arithmétique - par exemple la méthode \\ " determineOperationType \\" sera utilisé par \\ " parseString \\" pour interpréter la pièce de fonctionnement de l'énoncé « 2 + 2 . ». La méthode \\ " performCalculation \\" fait le calcul et renvoie la réponse.
Insérez le code suivant dans votre classe :
booléen parseString (String s) {
String [] = opérateurs PARTAGE (\\ " [] \\")
GO try {
operatorOne = new BigDecimal ( opérateurs [0])
GO < , br /> operatorTwo = new BigDecimal ( opérateurs [2] )
GO OperationType = determineOperationType ( opérateurs [1] )
GO return true < , br /> VOIR
} catch ( NumberFormatException e) {
System.err.println (\\ " ERROR: . opérateur valide \\")
GO < br /> return false
GO } catch ( ArrayIndexOutOfBoundsException e) {
System.err.println ( \\ "ERROR : nombre incorrect d'arguments : \\" + operators.length )
GO return false
GO } }
privé determineOperationType entier (String s ) throws NumberFormatException {
si ( s.equals ( \\ "+ \\") ) retour Ajouter
GO else if ( s.equals ( \\ "- \\") ) return
SOUS GO
else if ( s.equals ( \\ "/\\" ) ) return DIV
GO ; else if ( s.equals (\\ " * \\" ) ) MULT de retour
GO autre throw new NumberFormatException ()
GO } < , br />
BigDecimal performCalculation () { try {
if ( OperationType == ADD) {
retourner operatorOne.add ( operatorTwo )
GO } else if ( OperationType == SUB) {
operatorOne.subtract de retour ( operatorTwo )
GO < br /> } else if ( OperationType == MULT) {
operatorOne.multiply de retour ( operatorTwo )
GO } else if ( OperationType == DIV) {< , br /> retour operatorOne.divide ( operatorTwo )
GO } else return new BigDecimal (0)
GO } catch ( ArithmeticException e) {
System.err.println (\\ " exception arithmétique s'est produite. Très probablement, il s'agit d'une division par zéro. \\")
GO return new BigDecimal (0 )
GO } }
5
Ecrivez une méthode principale . Ceci est un exemple de programme simple à utiliser votre nouveau «Calculatrice \\" \\ classe , bien que dans la pratique, vous voudrez probablement importer votre classe dans le cadre d'un autre programme plus complexe. Pour que cette méthode principale pour travailler , cependant, vous aurez besoin d'ajouter une instruction import pour le haut de votre classe:
importation java.util.Scanner GO
\\ " scanner \\" est une classe de confort conçu pour le rendre plus facile à lire les données de la console. Ajouter la principale méthode suivante à votre classe:
public static void main ( String [] args ) {
Calculatrice c = new Calculator ()
, GO
System.out.println ( \\ " . . Saisissez une chaîne pour représenter le calcul étant effectué Placez un espace entre chaque jeton Par exemple: \\ \\ \\" 2 + 2 \\ \\ \\ " et pas \\ \\ \\ " 2 +2 \\ \\ \\" \\ " )
GO scan Scanner = new Scanner ( System.in )
GO < br /> String s = scan.nextLine ()
GO
booléen noError = c.parseString (s)
si GO ( noError ) {
BigDecimal bd = c.performCalculation ()
GO System.out.println ( bd.toPlainString ())
GO < br />} }