In: Computer Science
Please answer in JAVA
I am using java.time.Duration class.
1.). How can I add all of the given duration time?
for example:
Duration t1 = Duration.ofMinutes(2).plusSeconds(30)
Duration t2 = Duration.ofMinutes(3).plusSeconds(20)
then the result would be total = Duration.ofMinutes(5).plusSeconds(50)
*** and how would it be if it exceeds 59 minutes and its an hour.
2). How would I be able to add it all up on an ArrayList? does a for loop and simple add() works?
I have modified the answer according to your need. I hope this is what you wanted.
-----------------------------------------------------------------code--------------------------------------------------------------
import java.util.*;
import java.time.Duration;
public class Sample2{
public static Duration totaltime(
ArrayList<Duration> arrlist) {
Duration time = null;
for(int
i=0;i<arrlist.size();i++){
if(i==0) {
time=time.ofSeconds(i).plusSeconds(arrlist.get(i).getSeconds());//getting
time in second from arraylist for 1st elemen
}
else {
time=time.plusSeconds(arrlist.get(i).getSeconds());}
}
return time;
}
public static void main(String args[]) {
ArrayList<Duration> arrlist =
new ArrayList<Duration>();
Duration time;
long k;
Duration t1 =
Duration.ofMinutes(2).plusSeconds(30);
Duration t2 =
Duration.ofMinutes(3).plusSeconds(30);
Duration t3 =
Duration.ofMinutes(5).plusSeconds(20);
arrlist.add(t1);
arrlist.add(t2);
arrlist.add(t3);
time=totaltime(arrlist);
System.out.println(time);
}
}
I hope this what you want. if you still have any doubt please let me know.
you can add given duration time using plusMinutes() and plusSeconds() methods. Duration class (Java) automatically converts 60 minutes into 1 hours. I have taken example with 3 time duration. it is shown below in code as well as in screenshot of this programs output
----------------------------------------------------code----------------------------------------------------------------------
import java.util.*;
import java.time.Duration;
public class Test{
public static void main(String args[]) {
Duration t1 =
Duration.ofMinutes(2).plusSeconds(30);
Duration t2 =
t1.plusMinutes(3).plusSeconds(50);
Duration t3 =
t2.plusMinutes(54).plusSeconds(50);
System.out.println(t3);
}
}
2) yes you can easily add item into array list using for loop and add method. I have shown this in example.
code-------------------------------------------
import java.util.Scanner;
import java.util.*;
public class Main{
public static void main(String[] args) {
ArrayList<Integer> arrlist =
new ArrayList<Integer>();// arraylist
Scanner sc=new
Scanner(System.in);// scanner class object sc
int num;
for (int i = 0; i
< 4; i++) {
// it will add 4 items into
arraylist
System.out.println("Enter number to add item in
arraylist");
num=sc.nextInt();//reading input into num
variable
arrlist.add(num);//adding item into
arraylist
}
System.out.println(arrlist); //printing array list
}
}
---------------------------------------------Screenshots-----------------------------------------------------------------------------