Is there any reason the fallowing code would give A compile error ?
Import java.util.*;
public class Storageclass
// class used to store the Student data
{
// creates the private array list needed.
private ArrayList<String> nameList = new ArrayList<String>();
private ArrayList<double> GPAList = new ArrayList<double>();
private ArrayList<double> passedList = new ArrayList<double>();
}
this is in a class access by a main file there is more in the class by it not part of this error. when I run this the two double arrayList give me this error.
Storageclass.java:8: error: unexpected type
private ArrayList<double> GPAList = new ArrayList<double>(1);
^
required: reference
found: double
I am not sure why or what that error means any help would be appreciated.
~ Thanks for the help was a embarrassingly novice mistake I made, but hope full this can help some other person.
Since all generic types <T>
are erased at runtime to Object
every type you put in place of T
must also extend Object. So you can't set T
to be primitive type like double
but you can use its wrapper class Double
. Try this way:
private List<Double> passedList = new ArrayList<Double>();
or since Java7 little shorter version
private List<Double> passedList = new ArrayList<>();
Also don't worry if you try to add
variable of double
type to such array since it will be autoboxed to Double
.
Primitive types cannot be used as generic type arguments. Use the wrapper type Double
(or whichever is appropriate).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With