faire du texte apparaissent en retard
Je tiens à rendre le texte de la manière suivante:
H
wait 0.1 seconds
He
wait 0.1 seconds
Hel
wait 0.1 seconds
Hell
wait 0.1 seconds
Hello
Mais je ne suis pas sûr de savoir comment faire. Toute aide serait appréciée.
EDIT: je suis en espérant que je serai en mesure de le faire d'une manière qui ne nécessite pas de me faire un Système.out.print(); pour chaque lettre.
EDIT 3: c'est Ici mon code. EDIT 4: Pas plus de problèmes, cela a fonctionné parfaitement, merci.
import java.util.Scanner;
import java.util.concurrent.TimeUnit;
public class GameBattle
{
public static void main(String[] args) throws Exception {
printWithDelays("HELLO", TimeUnit.MILLISECONDS, 100);
}
public static void printWithDelays(String data, TimeUnit unit, long delay)
throws InterruptedException {
for (char ch:data.toCharArray()) {
System.out.print(ch);
unit.sleep(delay);
}
}
- Le premier message d'erreur vous dit que vous ne pouvez pas mettre un
public static void main
il - vous probablement déjà un ailleurs. - Le message s'affiche toujours après que j'ai supprimer l'autre public static void main.
- J'ai besoin de voir votre code, au moins 50 premières lignes de voir exactement où vous mets mon code. Je soupçonne que vous mettez
main
méthode à l'intérieur d'une autre méthode. Il peut y avoir d'autres raisons de vos erreurs, mais sans voir votre code, il serait très difficile de les corriger. - savez-vous comment programmer en Java du tout?!? ou êtes-vous juste de ne pas penser à ce que vous faites?
- Je sais quelques choses, mais je suis complètement paumé sur la façon de le faire, je peux résoudre le nouveau message d'erreur, je suis soit manquants ou ont un supplément de "}".
- Il vous manque une
}
à la fin. Si vous avez d'autres code à l'intérieur deGameBattle.java
fichier, il va provoquer beaucoup de problèmes. Vous devez utiliser l'indentation de ton code pour voir de tels problèmes.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez imprimer chaque lettre dans
0.1s
intervalle à l'aide deThread.sleep
ou des plus lisible (au moins pour moi) à l'aide deTimeUnit.MILLISECONDS.sleep
par exemple[Mise à jour]
Je ne vois pas de raison de ne pas faire de cette façon.
java.util.concurrent.TimeUnit
aux importations?Utiliser le
Thread.sleep
fonction pour suspendre l'exécution.Bien sûr, vous voudrez probablement mettre tout ça dans une boucle, mais Thread.le sommeil est ce que vous voulez
Essayez ceci:
Edit:
si vous ne souhaitez que 1 caractère par 1, que: