使用循环和字符串绘制X轴和Y轴



我有一个非常具体的编程任务。我只需要使用循环和if-else语句绘制x和y轴,它所在的方法只能返回字符串,要么是轴字符,如|,要么是空字符串"。我认为它几乎是正确的,但我不明白为什么y轴不是在x==0打印的,而是在x==-10打印的。我很想知道如何解决这个问题,我相信这是我忽略的一个小问题。如果我返回"而不是",它确实有效,但我不被允许这样做。谢谢

public class Try1 {
public static void main(String[] args) {
  int height = 10;
  int width = 10; 
  for (int y = height; y >= -10; y--){
   for (int x = -10 ; x <= width; x++){
     DrawAxis(x,y);
     System.out.print(DrawAxis (x,y));
   }
   System.out.print("n");
  }
}


 public static String DrawAxis(int x, int y)
 {
   if (x == 10 && y == 0)
      return ">";
   else 
     if (x == 0 && y == 10)
      return "^";
   else 
     if (x == 0 && y == 0)
       return ".";
   else 
      if (x == 0 && y >= -10)
        return "|";
   else
     if ( x >= -10 && y == 0)
      return "-";
return "";}
 }

由于在第二个for循环中将"x"变量初始化为-10,因此开始在-10处打印x。

此外,在命名方法和变量时使用camel大小写是惯例,因此您应该将方法从"drawAxis"重命名为"drawAxis",以提高可读性。

if(x==0&&y>=-10)return"在符号前使用多个空格:|";编译并运行,然后看到|的位置,然后根据需要添加空格或减空格,(有一个小要求,请在帖子中为直线和抛物线部分提供提示,我们将不胜感激)抛物线与直线相交的地方。

我终于弄明白了,我用空格代替了主方法中的空字符串返回,现在它工作得非常好!谢谢你的帮助!

最新更新