返回值和System.in方法的方法

时间:2018-01-20 19:36:58

标签: java

我正在开发一个用Java绘制树的项目。我必须创建一个连接到System.in控制台输入设备的公共静态Scanner类对象。作为类对象,它应该是此类中所有方法的范围。最重要的是,我必须有一个名为getAttribute的方法,标题为:

public static int getAttribute(String prompt)

" main"将调用getAttribute两次,一次是树中的段数(在本例中为3),第二次是段的高度(4)。对于此树,填充字符为*。基本上,第一个样本树是:

Array.prototype.map

到目前为止我的编码是:

let data = [{name:'john',age: 24}, {name:'arian', age: 34}]

console.log(data.map( (item) => { return { title: item.name } }))

我在底部有三个段落,因为我知道我需要它们,但还没有弄清楚它们适合的方式和位置。 目前,我主要关注的是#34; writeSpaces"工作方法,但我不断收到此错误: DrawTrees.java:12:错误:预期    public static void writeSpaces(int = 6)                                      ^ 我知道这很多,但我已经尝试过,但没有任何效果。

2 个答案:

答案 0 :(得分:3)

如果您提供的代码是您使用的代码,那么会出现很多语法错误。这是您的代码没有语法错误。

public class DrawTrees {
   public static final int SubHeight = 4 ;

   public static void main(String[] args) {
      for (int line = 1; line <= SubHeight; line++) {
         writeSpaces(6 - line) ;
         System.out.print("*") ;
      }

    System.out.println(*);
    Scanner scanner = new Scanner(System.in);
    String username = scanner.nextLine();
    System.out.println();
   }

   public static int getAttribute(double height){

   }
   public static void writeSpaces(int spaces){
      for (int i = 1; i <= spaces; i++){
         System.out.print(" ");
      }
   }
}

这不是项目的解决方案,只是对原始错误的修复。您需要查找的东西是在Java中正确创建方法。您提供的代码表明您对语法没有很强的掌握,但您的IDE应该可以帮助您解决大多数这些错误。

这里简要概述了制作方法时需要注意的事项。

1)每种方法都有头部和身体。

public static void main(String[] args)///the head
{
   ///the body
}

2)头部用于表示访问级别,是否为静态/非静态,返回,名称和方法参数。

3)参数必须与声明变量的方式相同。

public void foo(int number) ///[datatype] int [variable name] number

4)方法的主体以大括号 {}

开头和结尾

花点时间处理您的项目,并确保在您考虑解决方案时能够充分了解如何编写代码。祝你好运。

答案 1 :(得分:1)

writeSpaces()的方法签名中存在语法错误。

将其更改为:

public static void writeSpaces(int n)

其中n是您要打印的空格数。