2010-05-15 5 views
0

Je dois convertir la chaîne de 1324312321 en tableau d'entiers en Javacomment représenter un nombre négatif à un tableau d'entiers?

c'est très bien. Je pourrais utiliser la méthode parseInt entier et sous-chaîne de chaîne

mais comment puis-je repesent -12.312.312 à mon tableau original d'entier ..

le fait que - est un char/chaîne et convertir en tableau de nombre entier altérerait la valeur (même si je convertir - en nombre entier équivalent, il changerait le reste de 12.312.312)

il doit être un tableau de nombres entiers et comment dois-je convertir des nombres négatifs et keeep toujours la même valeur

en quelque sorte rappeler moi de deux compléments truc mais je ne pense pas que je dois descendre au niveau binaire dans mon prog ram ..

un autre truc pour faire cela?

merci! Pourquoi ne pas simplement stocker le premier élément en tant que -1 au lieu de 1?

Répondre

3

+1

ou vous pourriez les rendre tous négatifs – akf

0

Une façon serait de fournir un signe pour tous les entiers

+1+2+3+1+2+3+1+2 

ou laisser un espace vide pour les entiers positifs

1 2 3 1 2 3 1 2 

Vous pourriez dire qu'un signe moins précède toute nombre entier négatif L'exemple

1231-2312 

signifierait que le cinquième nombre entier dans le tableau est -2. Si vous voulez représenter un tableau d'entiers de cette façon, vous devrez probablement analyser la chaîne vous-même, plutôt que d'utiliser une méthode de type chaîne.

0

Il y a un certain nombre de façons:

  • les plus importants font chiffres négatifs,
  • faire tous les chiffres négatifs,
  • ajouter un premier chiffre (par exemple -1 contre 0) pour représenter la signe, ou
  • représentent le signe séparément du tableau de chiffres.

Le meilleur dépend de ce que vous allez faire avec la série de chiffres. Par exemple, si vous devez représenter des zéros non significatifs à partir de la chaîne d'entrée, la première approche ne fonctionne pas ... il n'y a pas de valeur -0.

1

La conversion en un tableau d'entiers peut signifier plusieurs choses différentes. Pourquoi ne faites-vous pas juste?

String text = "-12312312"; 
int[] values = { Integer.parseInt(text) }; 

Vous n'avez pas précisé pourquoi vous voudriez créer un tableau d'entiers quand un seul entier suffit.

Questions connexes