* Operator (Visual Basic)

Multiplies two numbers.


number1 * number2  


Term Definition
number1 Required. Any numeric expression.
number2 Required. Any numeric expression.


The result is the product of number1 and number2.

Supported Types

All numeric types, including the unsigned and floating-point types and Decimal.


The data type of the result depends on the types of the operands. The following table shows how the data type of the result is determined.

Operand data types Result data type
Both expressions are integral data types (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong) A numeric data type appropriate for the data types of number1 and number2. See the "Integer Arithmetic" tables in Data Types of Operator Results.
Both expressions are Decimal Decimal
Both expressions are Single Single
Either expression is a floating-point data type (Single or Double) but not both Single (note Decimal is not a floating-point data type) Double

If an expression evaluates to Nothing, it is treated as zero.


The * operator can be overloaded, which means that a class or structure can redefine its behavior when an operand has the type of that class or structure. If your code uses this operator on such a class or structure, be sure you understand its redefined behavior. For more information, see Operator Procedures.


This example uses the * operator to multiply two numbers. The result is the product of the two operands.

Dim testValue As Double
testValue = 2 * 2
' The preceding statement sets testValue to 4.
testValue = 459.35 * 334.9
' The preceding statement sets testValue to 153836.315.

See also