SlideShare a Scribd company logo
Primitive Wrappers
Prime Benefits Provides a way of wrapping primitive values in an object so that a primitive can be treated as an object. To provide a set of utility methods for primitives.
Situations when required When primitives are required to be added to a collection object. When we want to return a primitive from a method that returns an object. When converting primitives to and from String objects. When converting primitives & String objects to and from different bases like binary, octal & hexadecimal.
Wrapper Constructors
Creating Objects Integer i1 = new Integer(5); Integer i2 = new Integer(“5”); Float f1 = new Float(5.6f); Float f2 = new Float(“5.6f”); Double d1 = new Double(6.7); Double d2 = new Double(“6.7”); Character c = new Character(‘a’); Boolean b1 = new Boolean(true); Boolean b2 = new Boolean(“true”); Boolean b3 = new Boolean(“TrUe”);
Creating Objects  contd. valueOf() methods Integer i1 = Integer.valueOf(“101”,2); Integer i2 = Integer.valueOf(“F”,16); Integer i3 = Integer.valueOf(“012”,8); Integer i4 = Integer.valueOf(“102”);
Class Hierarchy java.lang.Object java.lang.Number java.lang.Byte java.lang.Long java.lang.Float java.lang.Integer java.lang.Short java.lang.Boolean java.lang.Double java.lang.Character
java.lang.Number public java.lang.Number(); public abstract int intValue(); public abstract long longValue(); public abstract float floatValue(); public abstract double doubleValue(); public byte byteValue(); public short shortValue(); java.lang.Object java.lang.Number java.io.Serializable
Wrapper Conversion Utilities using methods from Number class
Wrapper Conversion Utilities  contd. Integer i = new Integer(200); byte b = i.byteValue(); short  s = i.shortValue(); long l = i.longValue(); float fl = i.floatValue(); Float f = new Float(5.6f); byte b2 = f.byteValue(); short s2 = f.shortValue(); int i2 = f.intValue(); Stack Heap 5.6 200 i f i2 b2 s2 fl l s b
Wrapper Conversion Utilities  contd.
Boxing & Unboxing Integer ref = new Integer(15); Encapsulating the primitive value in the respective Wrapper object is called boxing or Wrapping. int a  = ref.intValue() + 5; Getting the encapsulated value out of the object is called unboxing or unwrapping .
AutoBoxing & AutoUnboxing Supported by jdk1.5+ Integer i = 67;  automatically translated into following code by the compiler. Integer i = new Integer(67);  // so called AutoBoxing int a = i + 10; automatically translated into following code by the compiler. int a = i.intValue() + 10;  // so called AutoUnboxing
Ad

More Related Content

What's hot (20)

Functions in c++,
Functions in c++,Functions in c++,
Functions in c++,
Padma Kannan
 
Operator Overloading & Type Conversions
Operator Overloading & Type ConversionsOperator Overloading & Type Conversions
Operator Overloading & Type Conversions
Rokonuzzaman Rony
 
C++ and OOPS Crash Course by ACM DBIT | Grejo Joby
C++ and OOPS Crash Course by ACM DBIT | Grejo JobyC++ and OOPS Crash Course by ACM DBIT | Grejo Joby
C++ and OOPS Crash Course by ACM DBIT | Grejo Joby
GrejoJoby1
 
Virtual Functions
Virtual FunctionsVirtual Functions
Virtual Functions
Roman Okolovich
 
Compile time polymorphism
Compile time polymorphismCompile time polymorphism
Compile time polymorphism
ForwardBlog Enewzletter
 
Operator Overloading
Operator OverloadingOperator Overloading
Operator Overloading
Dustin Chase
 
friends functionToshu
friends functionToshufriends functionToshu
friends functionToshu
Sidd Singh
 
Polymorphism in c++(ppt)
Polymorphism in c++(ppt)Polymorphism in c++(ppt)
Polymorphism in c++(ppt)
Sanjit Shaw
 
operator overloading
operator overloadingoperator overloading
operator overloading
Nishant Joshi
 
Operator overloading
Operator overloadingOperator overloading
Operator overloading
piyush Kumar Sharma
 
C++ concept of Polymorphism
C++ concept of  PolymorphismC++ concept of  Polymorphism
C++ concept of Polymorphism
kiran Patel
 
科特林λ學
科特林λ學科特林λ學
科特林λ學
彥彬 洪
 
Overloading
OverloadingOverloading
Overloading
poonamchopra7975
 
Deepak Soni,BCA 2nd Year
Deepak Soni,BCA 2nd YearDeepak Soni,BCA 2nd Year
Deepak Soni,BCA 2nd Year
dezyneecole
 
C++ programming function
C++ programming functionC++ programming function
C++ programming function
Vishalini Mugunen
 
Function overloading
Function overloadingFunction overloading
Function overloading
Sudeshna Biswas
 
C++ Function
C++ FunctionC++ Function
C++ Function
Hajar
 
Java Script Workshop
Java Script WorkshopJava Script Workshop
Java Script Workshop
Dmitry Baranovskiy
 
Polymorphism
PolymorphismPolymorphism
Polymorphism
Nilesh Dalvi
 
GC in C++0x [eng]
GC in C++0x [eng]GC in C++0x [eng]
GC in C++0x [eng]
yak1ex
 
Operator Overloading & Type Conversions
Operator Overloading & Type ConversionsOperator Overloading & Type Conversions
Operator Overloading & Type Conversions
Rokonuzzaman Rony
 
C++ and OOPS Crash Course by ACM DBIT | Grejo Joby
C++ and OOPS Crash Course by ACM DBIT | Grejo JobyC++ and OOPS Crash Course by ACM DBIT | Grejo Joby
C++ and OOPS Crash Course by ACM DBIT | Grejo Joby
GrejoJoby1
 
Operator Overloading
Operator OverloadingOperator Overloading
Operator Overloading
Dustin Chase
 
friends functionToshu
friends functionToshufriends functionToshu
friends functionToshu
Sidd Singh
 
Polymorphism in c++(ppt)
Polymorphism in c++(ppt)Polymorphism in c++(ppt)
Polymorphism in c++(ppt)
Sanjit Shaw
 
operator overloading
operator overloadingoperator overloading
operator overloading
Nishant Joshi
 
C++ concept of Polymorphism
C++ concept of  PolymorphismC++ concept of  Polymorphism
C++ concept of Polymorphism
kiran Patel
 
科特林λ學
科特林λ學科特林λ學
科特林λ學
彥彬 洪
 
Deepak Soni,BCA 2nd Year
Deepak Soni,BCA 2nd YearDeepak Soni,BCA 2nd Year
Deepak Soni,BCA 2nd Year
dezyneecole
 
C++ Function
C++ FunctionC++ Function
C++ Function
Hajar
 
GC in C++0x [eng]
GC in C++0x [eng]GC in C++0x [eng]
GC in C++0x [eng]
yak1ex
 

Similar to Primitive Wrappers (20)

Polymorphism in C++ for beginners reference
Polymorphism  in C++ for beginners referencePolymorphism  in C++ for beginners reference
Polymorphism in C++ for beginners reference
21pd23
 
vectors.(join ALL INDIA POLYTECHNIC (AICTE)).pptx
vectors.(join ALL INDIA POLYTECHNIC (AICTE)).pptxvectors.(join ALL INDIA POLYTECHNIC (AICTE)).pptx
vectors.(join ALL INDIA POLYTECHNIC (AICTE)).pptx
VivekSharma34623
 
OBJECTS IN Object Oriented Programming .ppt
OBJECTS IN Object Oriented Programming .pptOBJECTS IN Object Oriented Programming .ppt
OBJECTS IN Object Oriented Programming .ppt
SaadAsim11
 
pointers, virtual functions and polymorphisms in c++ || in cpp
pointers, virtual functions and polymorphisms in c++ || in cpppointers, virtual functions and polymorphisms in c++ || in cpp
pointers, virtual functions and polymorphisms in c++ || in cpp
gourav kottawar
 
Lecture20 vector
Lecture20 vectorLecture20 vector
Lecture20 vector
nurkhaledah
 
Threads and Callbacks for Embedded Python
Threads and Callbacks for Embedded PythonThreads and Callbacks for Embedded Python
Threads and Callbacks for Embedded Python
Yi-Lung Tsai
 
Java level 1 Quizzes
Java level 1 QuizzesJava level 1 Quizzes
Java level 1 Quizzes
Steven Luo
 
RTTI and Namespaces.pptx ppt of c++ programming language
RTTI and Namespaces.pptx ppt of c++ programming languageRTTI and Namespaces.pptx ppt of c++ programming language
RTTI and Namespaces.pptx ppt of c++ programming language
ankeshshri
 
Wrapper class
Wrapper classWrapper class
Wrapper class
kamal kotecha
 
麻省理工C++公开教学课程(二)
麻省理工C++公开教学课程(二)麻省理工C++公开教学课程(二)
麻省理工C++公开教学课程(二)
ProCharm
 
Lecture 3, c++(complete reference,herbet sheidt)chapter-13
Lecture 3, c++(complete reference,herbet sheidt)chapter-13Lecture 3, c++(complete reference,herbet sheidt)chapter-13
Lecture 3, c++(complete reference,herbet sheidt)chapter-13
Abu Saleh
 
Kotlin for Android Developers - 3
Kotlin for Android Developers - 3Kotlin for Android Developers - 3
Kotlin for Android Developers - 3
Mohamed Nabil, MSc.
 
Wraper class slide in advance Java programming
Wraper class slide in advance Java programmingWraper class slide in advance Java programming
Wraper class slide in advance Java programming
NivaTripathy1
 
Writing native bindings to node.js in C++
Writing native bindings to node.js in C++Writing native bindings to node.js in C++
Writing native bindings to node.js in C++
nsm.nikhil
 
C Language fundamentals hhhhhhhhhhhh.ppt
C Language fundamentals hhhhhhhhhhhh.pptC Language fundamentals hhhhhhhhhhhh.ppt
C Language fundamentals hhhhhhhhhhhh.ppt
lalita57189
 
C questions
C questionsC questions
C questions
parm112
 
Polymorphismupload
PolymorphismuploadPolymorphismupload
Polymorphismupload
Mukhtar_Hunzai
 
Using Reflections and Automatic Code Generation
Using Reflections and Automatic Code GenerationUsing Reflections and Automatic Code Generation
Using Reflections and Automatic Code Generation
Ivan Dolgushin
 
04 Variables
04 Variables04 Variables
04 Variables
thewhiteafrican
 
DAY_1.3.pptx
DAY_1.3.pptxDAY_1.3.pptx
DAY_1.3.pptx
ishasharma835109
 
Polymorphism in C++ for beginners reference
Polymorphism  in C++ for beginners referencePolymorphism  in C++ for beginners reference
Polymorphism in C++ for beginners reference
21pd23
 
vectors.(join ALL INDIA POLYTECHNIC (AICTE)).pptx
vectors.(join ALL INDIA POLYTECHNIC (AICTE)).pptxvectors.(join ALL INDIA POLYTECHNIC (AICTE)).pptx
vectors.(join ALL INDIA POLYTECHNIC (AICTE)).pptx
VivekSharma34623
 
OBJECTS IN Object Oriented Programming .ppt
OBJECTS IN Object Oriented Programming .pptOBJECTS IN Object Oriented Programming .ppt
OBJECTS IN Object Oriented Programming .ppt
SaadAsim11
 
pointers, virtual functions and polymorphisms in c++ || in cpp
pointers, virtual functions and polymorphisms in c++ || in cpppointers, virtual functions and polymorphisms in c++ || in cpp
pointers, virtual functions and polymorphisms in c++ || in cpp
gourav kottawar
 
Lecture20 vector
Lecture20 vectorLecture20 vector
Lecture20 vector
nurkhaledah
 
Threads and Callbacks for Embedded Python
Threads and Callbacks for Embedded PythonThreads and Callbacks for Embedded Python
Threads and Callbacks for Embedded Python
Yi-Lung Tsai
 
Java level 1 Quizzes
Java level 1 QuizzesJava level 1 Quizzes
Java level 1 Quizzes
Steven Luo
 
RTTI and Namespaces.pptx ppt of c++ programming language
RTTI and Namespaces.pptx ppt of c++ programming languageRTTI and Namespaces.pptx ppt of c++ programming language
RTTI and Namespaces.pptx ppt of c++ programming language
ankeshshri
 
麻省理工C++公开教学课程(二)
麻省理工C++公开教学课程(二)麻省理工C++公开教学课程(二)
麻省理工C++公开教学课程(二)
ProCharm
 
Lecture 3, c++(complete reference,herbet sheidt)chapter-13
Lecture 3, c++(complete reference,herbet sheidt)chapter-13Lecture 3, c++(complete reference,herbet sheidt)chapter-13
Lecture 3, c++(complete reference,herbet sheidt)chapter-13
Abu Saleh
 
Kotlin for Android Developers - 3
Kotlin for Android Developers - 3Kotlin for Android Developers - 3
Kotlin for Android Developers - 3
Mohamed Nabil, MSc.
 
Wraper class slide in advance Java programming
Wraper class slide in advance Java programmingWraper class slide in advance Java programming
Wraper class slide in advance Java programming
NivaTripathy1
 
Writing native bindings to node.js in C++
Writing native bindings to node.js in C++Writing native bindings to node.js in C++
Writing native bindings to node.js in C++
nsm.nikhil
 
C Language fundamentals hhhhhhhhhhhh.ppt
C Language fundamentals hhhhhhhhhhhh.pptC Language fundamentals hhhhhhhhhhhh.ppt
C Language fundamentals hhhhhhhhhhhh.ppt
lalita57189
 
C questions
C questionsC questions
C questions
parm112
 
Using Reflections and Automatic Code Generation
Using Reflections and Automatic Code GenerationUsing Reflections and Automatic Code Generation
Using Reflections and Automatic Code Generation
Ivan Dolgushin
 
Ad

More from Bharat17485 (12)

Channel Based Io
Channel Based IoChannel Based Io
Channel Based Io
Bharat17485
 
Core Java
Core JavaCore Java
Core Java
Bharat17485
 
Developing Multithreaded Applications
Developing Multithreaded ApplicationsDeveloping Multithreaded Applications
Developing Multithreaded Applications
Bharat17485
 
Interfaces & Abstract Classes
Interfaces & Abstract ClassesInterfaces & Abstract Classes
Interfaces & Abstract Classes
Bharat17485
 
Enum
EnumEnum
Enum
Bharat17485
 
Exceptions & Its Handling
Exceptions & Its HandlingExceptions & Its Handling
Exceptions & Its Handling
Bharat17485
 
Jstl & El
Jstl & ElJstl & El
Jstl & El
Bharat17485
 
Regular Expression
Regular ExpressionRegular Expression
Regular Expression
Bharat17485
 
Stream Based Input Output
Stream Based Input OutputStream Based Input Output
Stream Based Input Output
Bharat17485
 
String Handling
String HandlingString Handling
String Handling
Bharat17485
 
Swing
SwingSwing
Swing
Bharat17485
 
Applying Generics
Applying GenericsApplying Generics
Applying Generics
Bharat17485
 
Channel Based Io
Channel Based IoChannel Based Io
Channel Based Io
Bharat17485
 
Developing Multithreaded Applications
Developing Multithreaded ApplicationsDeveloping Multithreaded Applications
Developing Multithreaded Applications
Bharat17485
 
Interfaces & Abstract Classes
Interfaces & Abstract ClassesInterfaces & Abstract Classes
Interfaces & Abstract Classes
Bharat17485
 
Exceptions & Its Handling
Exceptions & Its HandlingExceptions & Its Handling
Exceptions & Its Handling
Bharat17485
 
Regular Expression
Regular ExpressionRegular Expression
Regular Expression
Bharat17485
 
Stream Based Input Output
Stream Based Input OutputStream Based Input Output
Stream Based Input Output
Bharat17485
 
Applying Generics
Applying GenericsApplying Generics
Applying Generics
Bharat17485
 
Ad

Primitive Wrappers

  • 2. Prime Benefits Provides a way of wrapping primitive values in an object so that a primitive can be treated as an object. To provide a set of utility methods for primitives.
  • 3. Situations when required When primitives are required to be added to a collection object. When we want to return a primitive from a method that returns an object. When converting primitives to and from String objects. When converting primitives & String objects to and from different bases like binary, octal & hexadecimal.
  • 5. Creating Objects Integer i1 = new Integer(5); Integer i2 = new Integer(“5”); Float f1 = new Float(5.6f); Float f2 = new Float(“5.6f”); Double d1 = new Double(6.7); Double d2 = new Double(“6.7”); Character c = new Character(‘a’); Boolean b1 = new Boolean(true); Boolean b2 = new Boolean(“true”); Boolean b3 = new Boolean(“TrUe”);
  • 6. Creating Objects contd. valueOf() methods Integer i1 = Integer.valueOf(“101”,2); Integer i2 = Integer.valueOf(“F”,16); Integer i3 = Integer.valueOf(“012”,8); Integer i4 = Integer.valueOf(“102”);
  • 7. Class Hierarchy java.lang.Object java.lang.Number java.lang.Byte java.lang.Long java.lang.Float java.lang.Integer java.lang.Short java.lang.Boolean java.lang.Double java.lang.Character
  • 8. java.lang.Number public java.lang.Number(); public abstract int intValue(); public abstract long longValue(); public abstract float floatValue(); public abstract double doubleValue(); public byte byteValue(); public short shortValue(); java.lang.Object java.lang.Number java.io.Serializable
  • 9. Wrapper Conversion Utilities using methods from Number class
  • 10. Wrapper Conversion Utilities contd. Integer i = new Integer(200); byte b = i.byteValue(); short s = i.shortValue(); long l = i.longValue(); float fl = i.floatValue(); Float f = new Float(5.6f); byte b2 = f.byteValue(); short s2 = f.shortValue(); int i2 = f.intValue(); Stack Heap 5.6 200 i f i2 b2 s2 fl l s b
  • 12. Boxing & Unboxing Integer ref = new Integer(15); Encapsulating the primitive value in the respective Wrapper object is called boxing or Wrapping. int a = ref.intValue() + 5; Getting the encapsulated value out of the object is called unboxing or unwrapping .
  • 13. AutoBoxing & AutoUnboxing Supported by jdk1.5+ Integer i = 67; automatically translated into following code by the compiler. Integer i = new Integer(67); // so called AutoBoxing int a = i + 10; automatically translated into following code by the compiler. int a = i.intValue() + 10; // so called AutoUnboxing