Solved

Is String a Primitive datatype or Non-Primitive? (Since String is an Object)

Posted on 2016-08-08
8
59 Views
Last Modified: 2016-11-14
I know String is a Primitive data type, but it can also be an Object.
If it's an Object, how can it be Primitive?


String s1="hello";
String s2=new string ("hello");

Open in new window

0
Comment
Question by:rgb192
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
8 Comments
 
LVL 36

Accepted Solution

by:
mccarl earned 167 total points
ID: 41748231
I know String is a Primitive data type

No, String is an Object and always an Object. Why do think otherwise? Is it because of the first line of code above?

If so, that is just the Java Language giving you some special syntax for creating a String Object that is already initialised to a certain value. But it is still an Object.

Same thing as...

Integer i = 3;

i is still an Integer Object, but Java has just done this behind the scenes..

Integer i = new Integer(3);
1
 
LVL 34

Assisted Solution

by:it_saige
it_saige earned 333 total points
ID: 41748887
No, String is not a primitive data type.  Java has 8 primitive data types; namely - byte, short, int, long, float, double, boolean and char.

Character strings are afforded special support via the java.lang.String class.

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html

-saige-
0
 

Author Comment

by:rgb192
ID: 41749038

i is still an Integer Object, but Java has just done this behind the scenes..
Integer i = new Integer(3);


Is integer an object?
0
What Is Transaction Monitoring and who needs it?

Synthetic Transaction Monitoring that you need for the day to day, which ensures your business website keeps running optimally, and that there is no downtime to impact your customer experience.

 
LVL 34

Assisted Solution

by:it_saige
it_saige earned 333 total points
ID: 41749067
While int is a primitive, Integer wraps the value of the primitive type int in an object. - Source

All primitives have wrappers.  The wrapper's are used to extend the primitive by adding Conversion, Comparison and Serialization methods (to name a few).

-saige-
1
 

Author Comment

by:rgb192
ID: 41792986
could you give an example of a wrapper
0
 
LVL 36

Expert Comment

by:mccarl
ID: 41793578
could you give an example of a wrapper
Wow, an example was in that last post from it_saige... "While int is a primitive, Integer wraps the value of the primitive type int in an object"

The others are...  Long, Short, Double, Float, Character, Boolean and Byte
0
 

Author Closing Comment

by:rgb192
ID: 41886854
thanks for int string wrapper
0

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

After being asked a question last year, I went into one of my moods where I did some research and code just for the fun and learning of it all.  Subsequently, from this journey, I put together this article on "Range Searching Using Visual Basic.NET …
Introduction Java can be integrated with native programs using an interface called JNI(Java Native Interface). Native programs are programs which can directly run on the processor. JNI is simply a naming and calling convention so that the JVM (Java…
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.
This video teaches viewers about errors in exception handling.

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question