Question

En python, vous pouvez utiliser un tuple dans une instruction print formatée et les valeurs de tuple sont utilisées aux positions indiquées dans la chaîne formatée. Par exemple:

>>> a = (1,"Hello",7.2)
>>> print "these are the values %d, %s, %f" % a
these are the values 1, Hello, 7.200000

Existe-t-il un moyen d'utiliser un tableau ou une collection dans une instruction java printf de la même manière?

J'ai consulté la documentation. et il semble que la prise en charge de certains types, comme Calendrier, soit intégrée, mais je ne vois rien pour les collections.

Si cela n’est pas fourni en Java, existe-t-il un langage Java qui serait utilisé dans un cas comme celui-ci, où vous remplissez des collections, puis imprimez les valeurs de nombreuses collections en utilisant une chaîne de formatage (autre que la boucle imbriquée) ?

Était-ce utile?

La solution

printf aura une déclaration dans le sens de:

public PrintString printf(String format, Object... args);

... signifie quasiment la même chose que [] . La différence est que ... permet à l'appelant de ne pas créer explicitement un tableau. Alors considérez:

    out.printf("%s:%s", a, b);

C'est l'équivalent de:

    out.printf("%s:%s", new Object[] { a, b });

Donc, pour revenir à votre question, pour un tableau, vous pouvez simplement écrire:

    out.printf("%s:%s", things);

Pour une collection:

    out.printf("%s:%s", things.toArray());

Autres conseils

La MessageFormat également.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top