user6629466
user6629466

Reputation:

Addition in function in Java

I am trying to add two numbers and display them through tomcat server. These are my codes:

SevletExample.java

public class ServletExample extends HttpServlet {
@Override
protected void doGet (HttpServletRequest req, HttpServletResponse resp)
        throws ServletException, IOException {
    String number1 = req.getParameter("firstNumber");
    String number2 = req.getParameter("secondNumber");
    String sum = number1 + number2;

    resp.getWriter().println("<html>");
    resp.getWriter().println("<head");
    resp.getWriter().println("<title></title>");
    resp.getWriter().println("</head>");
    resp.getWriter().println("</body>");

    resp.getWriter().println("The first integer is: " + number1);
    resp.getWriter().println("<br>The second integer is: " + number2);
    resp.getWriter().println("<br> The sum is: " + sum);

    resp.getWriter().println("</body>");
    resp.getWriter().println("</html>");
}

Index.html

<html>
<head>
        <title>Test Form</title>
</head>
<body>
        <form action="servlet1" method="get">
            Integer 1: <input type="text" name="firstNumber"><br>
            Integer 2: <input type="text" name="secondNumber"><br>
            <input type="submit" value="Add">
        </form>
</body>
</html>

When i run this application, lets say i put integer1 as 2 and integer2 as 2. I get the sum as 22 instead of 4.

How do i change the String sum = number1 + number2; portion to get the sum as 4? Should i change all String to Int?

Someone please help me. Thank you so much in advance.

Upvotes: 1

Views: 74

Answers (2)

You can use Integer.parseInt

int number1 = Integer.parseInt(req.getParameter("firstNumber"));
int number2 = Integer.parseInt(req.getParameter("secondNumber"));
int sum = number1 + number2;

Upvotes: 2

mikep
mikep

Reputation: 3905

You've declared sum as a String, so you get concatenation.

String sum = number1 + number2;

Upvotes: -1

Related Questions