Comment creer un type de donnée en java

Résolu/Fermé
lixana - 4 mai 2013 à 22:48
 lixana - 5 mai 2013 à 03:09
Bonjour,

voici le debut de mon programme en turbo pascal j'aimerais le transcrire en java mais je suis bloque :

program moyennes;
const Nel_max =40;
Lnom = 20;

type t_nom = string [Lnom]; // je voudrais savoir comment convertir cela en java

var nom :array[1..Nel_max] of t_nom;
moyenne:array[1..Nel_max] of real;




2 réponses

KX
Messages postés
16567
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
4 juillet 2022
2 967
Modifié par KX le 4/05/2013 à 23:14
En Pascal "string[Lnom]" crée une chaîne de "Lnom" caractères au maximum, c'est à dire un tableau de (Lnom+1) caractères que l'on modifiera comme on veut (le caractère 0 représentant la taille réelle <=n de la chaîne)

Mais le fonctionnement en Java est différent, car un String n'est pas modifiable ! Chaque opération effectuée sur une chaîne de caractères entraîne la création d'une nouvelle chaîne, c'est à dire d'un nouveau tableau dont la taille correspond exactement au nombre de caractères de la chaîne. Du coup on n'a pas de limite dans la taille de la String, il n'est donc pas possible de faire comme en Pascal.

Pour ce que tu veux faire, il vaudrait mieux faire directement nom=String[Nel_max], mais sans perdre de vue que la taille de String peut dépasser "Lnom" caractères (à toi de gérer explicitement cette contrainte).

Attention : en Pascal on peut choisir les indices de début et de fin de tableau (de 1 à Nel_max par exemple), mais en Java les cases des tableaux commencent toujours à 0, ici tu devras donc utiliser nom[0], nom[1]... nom[Nel_max-1]
1
merci , a vous
0