AndroidStudioProjects
Automate
ControleMachine1
ControleMachine2
ControleMachineJava
DEV1.1
DEV2.1
TP0:Introduction
TP10:TestsJUnit
Junit4Exemples
AssertTests.java
Calculator.java
CalculatorTest0.java
CalculatorTest1.java
CalculatorTest2.java
CalculatorTest3.java
Readme.txt
RunForestRun.java
TestParam.java
TestSuite.java
Junit4Exemples.tar.gz
junit.tar.gz
TP12:FluxDeCaracteres
TP1:ComposantsGraphiques
TP2:ClassesEtObjets
TP3:DiagrammesDeCasDusageEtDeClasses
TP4:Heritage
TP5:MiseEnPageEtDessin
TP6:Polymorphisme
TP7:Evenements
TP8
TP8:Tests
TP9:FluxOctets
DEV3.1
DEV3.2
DEV3.4
DEV32
DEV4.4
SAe
.gitignore
Ex1TP2.mdj
README.md
Vote.java
pourchot_dev32.tar.gz
31 lines
1.3 KiB
Java
31 lines
1.3 KiB
Java
|
|
||
|
/**
|
||
|
Calculator est une classe offrant une seule méthode qui évalue une somme, donnée sous la forme d'une chaîne de caractère listant des opérandes séparées par des +
|
||
|
|
||
|
*/
|
||
|
|
||
|
public class Calculator {
|
||
|
|
||
|
/**
|
||
|
somme les opérandes passées sous forme d'une chaîne de caractères et retourne le résultat sous forme d'entier.
|
||
|
@param expression : chaîne de caractères ("nombres" séparés par des + sans espaces), par exemple "42+3" ou encore "-42+42" (le moins unaire est autorisé).
|
||
|
ici nombre est à comprendre au sens de parseInt(java.lang.String)
|
||
|
@throws NumberFormatException : si l'expression n'est pas dans ce format (par exemple "x+2" ou " 1 +2" -- il y a des espaces -- ou encore "9999999990").
|
||
|
*/
|
||
|
public int evaluate(String expression) {
|
||
|
int sum = 0;
|
||
|
for (String summand: expression.split("\\+"))
|
||
|
sum += Integer.valueOf(summand);
|
||
|
return sum;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
Pour appeller cette super méthode depuis la ligne de commande (on ne regarde que le premier argument, les autres sont ignorés).
|
||
|
|
||
|
*/
|
||
|
public static void main(String[] args) {
|
||
|
Calculator calculator = new Calculator();
|
||
|
System.out.println(calculator.evaluate(args[0]));
|
||
|
}
|
||
|
}
|