What does the following assignment statement do:

```sum = 2*sum ;
```

1. Evaluate the expression: get the value in `sum` and multiply it by two.
2. Then, put that value into `sum`.

# Expressions

Sometimes you need to think carefully about the two steps of an assignment statement. The first step is to evaluate the expression on the right of the assignment operator.

An expression is a combination of literals, operators, variable names, and parentheses used to calculate a value.

This (slightly incomplete) definition needs some explanation:

• literal — characters that directly give you a value, like: 3.456
• operator — a symbol like plus `+` or times `*` that asks for an arithmetic operation.
• variable — a section of memory containing a value.
• parentheses`(` and `)`.

This might sound awful. Actually, this is stuff that you know from algebra, like:

```(32 - y) / ( x + 5 )
```

In the above, the character `/` means division.

Not just any mess of symbols will work. The following

```32 - y) / ( x  5 + )
```

is not a syntactically correct expression. There are rules for this, but the best rule is that an expression must look OK as algebra.

However, multiplication must always be shown by using a `*` operator. You can't multiply two variables by placing them next to each other. So, although `xy` might be correct in algebra, you must use `x*y` in Java.

### QUESTION 19:

Which of the following expressions are correct? (Assume that the variables have been properly declared elsewhere.)

 Expression Correct or Not? 53 12 - 3) x + 34 *z   99 sum + value