文字列をDate型に変換する時、DateFormatクラスのgetDateInstanceからparse()を使って変換することが出来ます。しかし、parseの中に入れる文字列はyyyy/MM/ddの形にしないと変換してくれません。 例えば、
Date date = DateFormat.getDateInstance().parse("2017/03/28");
は大丈夫ですが、
Date date = DateFormat.getDateInstance().parse("2017-03-28");
だとNGになります。
(追記) SimpledateFormatを使えばyyyy-MM-ddのフォーマットでもparseを通すことができるそうです。
DateFormat format=new SimpleDateFormat("yyyy-MM-dd"); format.parse("2017-03-29");
Date型の扱いはかなり苦手なので、ここに気づくのにかなり時間を費やしてしまいました…