Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

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

Posted on 2016-08-08
8
Medium Priority
?
86 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 668 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 1332 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 does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 34

Assisted Solution

by:it_saige
it_saige earned 1332 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

Tech or Treat! - Giveaway

Submit an article about your scariest tech experience—and the solution—and you’ll be automatically entered to win one of 4 fantastic tech gadgets.

Question has a verified solution.

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

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…
Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
This video teaches viewers about errors in exception handling.
Suggested Courses

610 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