Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Please help on below assignment: Thank you. Design and implement the class Day t

ID: 664279 • Letter: P

Question

Please help on below assignment: Thank you.

Design and implement the class Day that implements the day of the week in a program. The class Day should store the day, such as Sun for Sunday. The program should be able to perform the following operations on an object of type Day:

A. Set the day.

B. Print the day.

C. Return the day.

D. Return the next day.

E. Return the previous day.

F. Calculate and return the day by adding certain days to the current day. For example, if the current day is Monday and we add four days, the day to be returned is Friday. Similarly, if today is Tuesday and we add 13 days, the day to be returned is Monday.

G. Add the appropriate constructors.

H. Write the definitions of the methods to implement the operations for the class Day, as defined in A through G.

I. Write a program to test various operations on the class Day.

Explanation / Answer

INTERFACE:

package days;

public interface DayInterface {

   public void setDay(String day);
   public void printDay();
   public String returnDay(String key);
   public String returnNextDay(String day);
   public String returnPrevDay(String day);
}

INTERFACE IMPL::

package days;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;
import java.util.Map;
import java.util.Queue;

public class Day implements DayInterface{

Map<String,String> day=new HashMap<String,String>();


List<String> days=new ArrayList<>();
//Queue<String> days=new LinkedList<String>();
public Day()
{
   day.put("sun","SUNDAY");
   day.put("mon","MONDAY");
   day.put("tue","TUESDAY");
   day.put("wed","WEDNESDAY");
   day.put("thr","THURSDAY");
   day.put("fri","FRIDAY");
   day.put("sat","SATURDAY");
}


   @Override
   public void setDay(String day) {
       String d=this.day.get(day);
       days.add(d);
   }

   @Override
   public void printDay() {
        
       System.out.println("***********DAYS ARE**************");
        for (Iterator iterator = days.iterator(); iterator.hasNext();) {
      
           System.out.println(iterator.next());
       }
   }


   @Override
   public String returnDay(String key) {
     return day.get(key);
   }


   @Override
   public String returnNextDay(String day) {
       String d=this.day.get(day);
       int index=days.indexOf(d);
       if(days.size()>index || index<0)
       {
           d="";
       }
       else
       {
           d=days.get(index+1);
       }
              
       return d;
   }


   @Override
   public String returnPrevDay(String day) {
       String d=this.day.get(day);
       int index=days.indexOf(d);
       if(days.size()>index || index<0)
       {
           d="";
       }
       else
       {
           d=days.get(index-1);
       }
              
       return d;
   }
   }

  

TESTCLASS::

package days;

public class TestDay {

   /**
   * @param args
   */
   public static void main(String[] args) {
   Day d=new Day();
   d.setDay("sun");
   d.setDay("mon");
   d.setDay("tue");
   d.printDay();
   d.returnDay("mon");
   System.out.println(d.returnNextDay("tue"));
   System.out.println(d.returnPrevDay("mon"));

   }

}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote