有人可以帮助我在以下代码的逻辑中找到错误吗?
我应该只打印一次数组元素(值vise)
public class dfdf
{
public static void main(String...args)
{
System.out.println(args.length);
String a= "1234512";
for(int i = 0; i < a.length(); i++)
{
for(int j = 0; j <= (i); j++)
{
if (i == 0)
{
System.out.print(a.charAt(i)); break;
}
else if (a.charAt(j) == a.charAt(i))
{
break;
}
else
{
System.out.print(a.charAt(i));}
}
}
}
}
}
期望输出= 12345实际输出-123344455552
答案 0 :(得分:1)
public static void main(String args[]){
String a="1234512";
for(int i=0;i<a.length();i++){
boolean already = false;
for(int j = i - 1; j >= 0; --j){
if(a.charAt(j)==a.charAt(i)){
already = true;
break;
}
}
if(already == false){
System.out.print(a.charAt(i));
}
}
}