SimpleDateFormat timeFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
SimpleDateFormat currentDateFormat = new SimpleDateFormat("yyyy-MM-dd");
String  currentTime = timeFormat.format(time);
String currnetDate = currentDateFormat.format(time);
String  startTime = currnetDate + " " + String.valueOf("시작시간");
String endTime = currnetDate + " " + String.valueOf("끝나는시간");
// String -> Date
Date dateStartTime = timeFormat.parse(startTime);
Date dateEndTime = timeFormat.parse(endTime);
//원하는 해당 시간
Date dateCurrentTime = timeFormat.parse(currentTime);
// 크다(1), 같다(0), 작다(-1)
int compare1 = dateCurrentTime.compareTo(dateStartTime);
int compare2 = dateEndTime.compareTo(dateCurrentTime);
if(compare1 < 0 && compare2 >= 0) { 
	//시작시간이 어제이고 (끝나는시간과 현재시간이 일자가 동일하고)
	//끝나는시간이 현재시간보다 큰경우 (시작시간안에있고)
	Date format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(endTime);
	Date format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(currentTime);
	long diffSec  = (format1.getTime() - format2.getTime()) / 1000;
	long diffMin  = (format1.getTime() - format2.getTime()) / 60000;
	try {
		Thread.sleep(diffSec * 1000); // 멈춰있어야할 시간 
		
	} catch (Exception e) {
		e.printStackTrace();
	}
}
if(compare1 >= 0 && compare2 < 0){
	//현재시간이 시작시간보다크고(시작시간 안에있고) (끝나는시간과 현재시간이 일자가 동일하고)
	//끝나는시간이 내일인경우
	
	//끝나는시간을 내일로 변경
	Calendar cal = Calendar.getInstance();
        cal.setTime(dateEndTime);
        cal.add(Calendar.DATE, +1);
	
	Date format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(timeFormat.format(cal.getTime()));
	Date format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(currentTime);
	long diffSec  = (format1.getTime() - format2.getTime()) / 1000;
	long diffMin  = (format1.getTime() - format2.getTime()) / 60000;
	try {
		
		Thread.sleep(diffSec * 1000); // 멈춰있어야할 시간 
		
	} catch (Exception e) {
		e.printStackTrace();
	}
}
if(compare1 >= 0 && compare2 >= 0) { 
	// 시작시간과 끝나는시간이  오늘인경우 (현재시간이 시작시간과 끝나는시간 안이고 시작시간과 끝나는시간의 일자가 동일하고)
	Date format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(endTime);
	Date format2 = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(currentTime);
	long diffSec  = (format1.getTime() - format2.getTime()) / 1000;
	long diffMin  = (format1.getTime() - format2.getTime()) / 60000;
	try {
		Thread.sleep(diffSec * 1000); // 멈춰있어야할 시간 
		
	} catch (Exception e) {
		e.printStackTrace();
	}
}