2012-05-26 2 views
0

Alors, je me demandais quelle était la différence entre ceci:Simple Java Strings

first = "Hello!" 

et:

String first = "Hello!" 
+0

Que voulez-vous dire, spécifiquement? – sarnold

+2

Si vous essayez d'apprendre à programmer en Java (ou simplement de lire du code Java), alors vous devez lire/lire un livre de texte, ou faire les tutoriels Oracle Java. Sinon, la bonne réponse n'aura pas beaucoup de sens pour vous. –

+0

Le contexte peut faire toute la différence. – trutheality

Répondre

1

Je ne pense pas que cela:

first="Hello!" 

compilera car le compilateur va lancer une erreur demandant le type de premier. Java est un langage fortement typé - chaque variable a besoin d'un type bien défini. J'ignore les types génériques comme E pour l'instant ...

+0

Sauf s'il est précédé par 'String first;' –

10

Le premier affecte une variable déclarée; ce dernier déclare et affecte une variable.

+0

étant donné le libellé de la question, cela semble être la réponse la plus correcte –

+0

+1 réponse au point! –

0

À première vue, il n'y a pas d'autre différence que la première variable est déclarée dans une autre ligne probablement une variable d'instance?

En mémoire, les chaînes sont regroupées, ce qui devrait être le cas.

1

Pas vraiment sûr de ce que vous demandez. Dans votre premier exemple: first = "Hello!" vous ne déclarez pas first, donc si vous exécutez seulement cette ligne de code, cela ne fonctionnera pas. En supposant que vous avez déclaré first en tant que chaîne, les deux exemples sont identiques. Et il n'y a pas de type primitif string comme il y a avec int et Integer. La chaîne est toujours un objet.

1
first = "Hello!" 

ne compilera pas correctement car il n'a pas de type. En Java, lorsque vous créez une variable (appelée dans ce cas 'first'), vous devez lui donner un type tel que String, int, long, et cetera. Parce que le type n'a pas été donné, il ne sait pas quoi faire. Ainsi, lorsque vous créez la variable, vous devez utiliser String first = "Hello!"

Vous n'avez pas besoin de donner le type lorsque la variable est déjà déclarée. Par exemple,

String first = "Hello!" 
first = "Goodbye!" 

va d'abord être "Au revoir!"