黑马程序员技术交流社区

标题: 求找JAVA代码错误。。。 [打印本页]

作者: 朱丽静    时间: 2012-9-8 23:41
标题: 求找JAVA代码错误。。。
本帖最后由 朱丽静 于 2012-9-8 23:44 编辑

  1. public class PrintChar
  2. {
  3.     public static void main(String[] args)
  4. {
  5.      int i,j;
  6.       for(i=0;args[i]!='\0';i++)
  7.   {
  8.   System.out.println("args[i]");
  9.   for(j=0;j<i;j++)
  10.              System.out.println("*");
  11.   }
  12. }
  13. }
复制代码
程序还是有问题,要求输入ABCD...屏幕输出A*B**C***... 可是怎么就不对呢?

作者: 朱丽静    时间: 2012-9-8 23:45
顶个!!!!!!!!!!!!!!!!!!!自己顶

作者: zhaosenyang    时间: 2012-9-8 23:46
代码修改:
public class PrintChar
{
    public static void main(String[] args)
{
     int i,j;
      for(i=0;!args.equals("0");i++)
  {
  System.out.print(""+args);
  for(j=0;j<=i;j++)
             System.out.print("*");
  }
}
}  
args这个数组定义的是String类型,但你用于比较的却是char类型的值,其次就是你的内层循环里的判断语句了,因为你给出的是j<i,因为一开始i=0,j=0,到了执行内层循环的时候因为不满足j<i,所以跳过这次的循环直接进入第二次外层循环,所以就会出现AB**C***...这样的结果,最后就是你要明白println与print的区别:println是每输完一次就换行,print就不会。
作者: 陈俊来    时间: 2012-9-9 16:00
lz,你这代码真的搞不懂你要做什么你如果想遍历一个数组的话你可以这样做
for(int i=0;i<args.length;i++){
     System.out.println(args);
}
希望对你有所帮助

作者: 陈俊来    时间: 2012-9-9 16:01
System.out.println(args[i]);编辑器的问题显示出错了,应该是这个样子
作者: 袁艳超    时间: 2012-9-9 16:43
public class PrintChar{
       public static void main(String[] args) {                               
        for (int i = 0; i < args.length; i++) {
        if (args[i] != "\\0") {
                System.out.print(args[i]);
                for (int j = 0; j <= i; j++)
                        System.out.print("*");
                        }
                }
        }
}
作者: 张忠豹    时间: 2012-9-11 22:54
class Demo
{
       public static void main(String[] args)
        {
              int i ,j;
              StringBuilder sb = new StringBuilder();
              //传入的是一个字符串,其实是参数数组的args的一个元素,即args[0]对应的值
              for (i=0;i<args[0].length();i++) {
                      //每次截取一个字符
                      sb.append(args[0].substring(i, i+1));
                      //计算*的个数
                      for(j=0;j<=i;j++) {
                              sb.append("*");
                      }
              }
              System.out.println(sb.toString());
            }
}

希望对楼主有帮助!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2