Aizu Online ジャッジの問題を解いているのですが、以下のプログラムの間違っている箇所を教えてください。

+-*/?をString型のString cに代入して、if(c=="+")のように条件分岐させているのですが、うまくいっていないようです。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class test{
  public static void main(String[] args){
    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    try{
      while(true){
        String str = reader.readLine();

        String[] str_Array = str.split(" ");
        int a = Integer.parseInt(str_Array[0]);
        int b = Integer.parseInt(str_Array[2]);
        String c = str_Array[1];
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        if(c == "?") break;
        if(c == "+"){
          System.out.println(a+b);
        }else if(c == "-"){
          System.out.println(a-b);
        }else if(c == "/"){
          System.out.println(a/b);
        }else if(c == "*"){
          System.out.println(a*b);
        }
      }
      reader.close();
    }catch(IOException e){
      System.out.println("エラー:"+e);
    }
  }
}