自学Java

第一课

自学内容:跟UCB-CS61B开始做HW0

只对exercise内容进行说明,其余的课上跟着老师打一遍代码就行

  1. Java不同于Python、C等其余编程语言,所有的内容都是在Class内编写的。
  2. 函数同样也包含在Class内,并且可以理解为是一种method。

Exercise 1a:
题目看起来很熟悉,和练习C语言的内容一样,打印出由“*”组成的三角形,打印的行数自定义。
我想用创建并调用函数的方式实现,因此我将题目中的要求进行细分:

  1. 创建一个函数,可以实现根据输入值打印出与之相对应的行数&个数的“ * ”
    例如我们对一个函数输入数字5,则希望看到的结果为:
*
**
***
****
*****

因此要设定一个for循环,设定i从0递增至number_of_start(即为要求打印行数以及星星的个数)
其次,该如何使每一次的“ * ”递增呢,我采用的方式是继承一个StringBuffer并使用append()函数将字符串 “ * ” 进行附加:
首先定义一个字符串,其中仅包含一个“ * ”
之后继承一个StringBuffer命名为store_basic(从来不擅长起名。。。),这个Buffer将用于存储每次循环结束后的输出结果,以便在下一次循环中直接使用append()在原来的基础上加上一个小星星。
之后开始我们的for循环!
话不多说直接上代码

	public static void draw_start(int number_of_start){
		String basic = "*";
		StringBuffer store_basic = new StringBuffer();
		for (int i = 0; i <= number_of_start; i++){
			System.out.println(store_basic);
			store_basic.append(basic);
		}
	}

这样就可以得到一个输入数字,打印出响应个数以及行数的“ * ”的函数了
之后,在main中简单进行调用便可:

public static void main(String[] args){
		draw_start(5);
	}

程序运行结果如下(number_of_start = 5):

如果有一起学UCB-61B的小伙伴可以评论or私信,感觉组个队动力会更大
争取一日多更!

更多推荐

Java-自学笔记