Java Reference
In-Depth Information
49 String next =
tokenizer.peekToken();
50
if
(
"*"
.equals(next) ||
"/"
.equals(next))
51 {
52 tokenizer.nextToken();
53
int
value2 = getFactorValue();
54
if
(
"*"
.equals(next)) value =
value * value2;
55
else
value = value / value2;
56 }
57
else
done = true;
58 }
59
return
value;
60 }
61
62 /**
63
Evaluates the next factor found in the expression.
64 @return
the value of the factor
65 */
66
public int
getFactorValue()
67 {
68
int
value;
69 String next = tokenizer.peekToken();
70
if
(
"("
.equals(next))
71 {
72 tokenizer.nextToken(); //
Discard "("
73 value = getExpressionValue();
74 tokenizer.nextToken(); //
Discard ")"
75 }
76
else
77 value =
Integer.parseInt(tokenizer.nextToken());
78
return
value;
79 }
80
81
private
ExpressionTokenizer tokenizer;
82 }
615
616
ch13/expr/ExpressionTokenizer.java
1 /**