CS61B project0 记录

CS61B project0 记录,第1张

CS61B project0 记录

CS61B project0记录
  • 遇到的问题

遇到的问题
  1. copy a constructor: 讲义里没有,我很是头秃。瞎Google了一下居然给我找到了(当然了因为是很基础的……只不过我之前只写过c所以不太清楚……)。
	public Planet(Planet p){
		this.xxPos = p.xxPos;
		this.yyPos = p.yyPos;
		this.xxVel = p.xxVel;
		this.yyVel = p.yyVel;
		this.mass = p.mass;
		this.imgFileName = p.imgFileName;
	}
  1. 加planet数组的时候test没通过,原因是把p和p比较了,应该是this和p比较。
  2. 挠头警告,没搞懂;但可以编译和运行。

    因为只写了一个读取double,以为类型不匹配会跳过第一个int,但是测试时还是读取了file里的第一个int;所以得写个读取int的,再读取double。
    挠头,这样改了之后,前面的警告也消失了。所以是因为类型不匹配出现的警告,但是仍然可以强行运行……
  3. 声明method的时候得加上static,不明白为什么之前写Planet.java的时候不加也没出问题。等之后再体会吧,先往下推进。
  4. 呜呜好久没写C/JAVA了,最近几年都在写matlab,语法有点不习惯。
	 public static Planet[] readPlanets(String planetFileName){
	 	In in = new In(planetFileName);;
	 	int number = in.readInt();
	 	Planet[] pp = new Planet[number];

	 	in.readDouble();
	 	for(int i=0;i 

返回一个数组不要返pp[ ],返pp就行。
6. String[] args是main函数的形式参数,可以用来获取命令行用户输入进去的参数。
7. 字符串转成double的方法link
8. 挠头,说是因为有中文字符,查了一遍查不出来。只能换个编译方法。


改成这样就行啦,获得静止的Universe。

略去一些语法问题不提,最后成功动起来了!data的文件夹里还有很多有意思的可以玩一下。

9. 不明白,查了一下明明可以用public static final ?目前的知识还不能解决这个疑问,等学了一段时间再回来。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4744671.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-09
下一篇 2022-11-08

发表评论

登录后才能评论

评论列表(0条)

保存