If you are using a generic class or collection type with generics and you pass in a primitive type - short, int, long, float, double, char, boolean, you will get the below error either at the runtime or compile-time,
Compile Time Error: Type argument cannot be of primitive type
Run Time Error:
java: unexpected type
required: reference
found: int
Code with Compilation Error:
List<int> list = new ArrayList<>();
list.add(10);
Fix:
You need to replace the primitive type with its respective Object type,
int -> Integer
byte -> Byte
short -> Short
long -> Long
float -> Float
double -> Double
char -> Character
Fixed Code:
List<Integer> list = new ArrayList<>();
list.add(10);
If you are using an IDE like Eclipse or IntelliJ, you should get a hint on how to replace it,

Provide Feedback For This Article
We take your feedback seriously and use it to improve our content. Thank you for helping us serve you better!
😊 Thanks for your time, your feedback has been registered!
Comments & Discussion
Facing issues? Have questions? Post them here! We're happy to help!