Pourquoi lance-t-elle une erreur? Toute aide serait appréciéeInverser une chaîne sans affecter les caractères spéciaux
public class RAWS
{
public String rawsc(String ori)
{
String temp="";
for(int i=0;i<ori.length();i++)
{
char c=ori.charAt(i);
if(((c>=65)&&(c<=90))||((c>=97)&&(c<122)))
temp=c+temp;
}
for(int i=0;i<ori.length();i++)
{
char c=ori.charAt(i);
if(((c>=65)&&(c<=90))||((c>=97)&&(c<122)))
ori.replace(c, temp.charAt(i));
}
for(int i=0;i<ori.length();i++)
{
System.out.println(ori.charAt(i));
}
return(ori);
}
public static void main(String[] args)
{
String str="a,b$c";
RAWS ob=new RAWS();
String new1=ob.rawsc(str);
for(int i=0;i<new1.length();i++)
{
System.out.print(new1.charAt(i)+" ");
}
}
}
Editeur:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 4
at java.lang.String.charAt(String.java:658)
at arraygs.RAWS.rawsc(RAWS.java:22)
at arraygs.RAWS.main(RAWS.java:30)
Quelle erreur ????? – Antoniossss
Quel type d'erreur est généré? Pouvez-vous fournir la trace de la pile? –
Annulation de l'édition: veuillez conserver le code en tant que ** texte ** dans le corps de la question, et non en tant qu'image. –