我正在开发一个用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) ^ 我知道这很多,但我已经尝试过,但没有任何效果。
答案 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是您要打印的空格数。