1.随机点名器
大量数据需要被存储,如果用变量去一一定义,会比较繁琐,这时候需要一个较大的容器去存储这些数据,方便查询的操作
java最基本的容器是数组,计算速度也最快,这里可以定义一个字符串数组,把学生名字存储进去.数组的特点是有索引,
查询起来也很方便.
创建数组格式 :
数组类型[] 数组名字 = new 数组类型[数组长度];
数组类型[] 数组名字 = {具体元素};
数组类型 数组名字[]=new 数组类型[数组长度];
一般第一种比较常用,前期便于学习,第二种用的较多
数组特点 : 有索引 长度固定不可变 运行速度快
arr[0];
arr.length;
-------------------------------------------------------------------------------------
这里需要时键盘输入进行储存学生名字的,所以需要创建一个键盘录入对象,录入时
String[] arr = new String[3];
Scanner sc = new Scanner(System.in);
arr[0] = sc.next();
arr[1] = sc.next();
.
.
都是重复的动作,为了提高代码的复用性,所以可以用循环来进行输入,
for(int x = 0; x<arr.length;x++){
arr[x] = sc.next();
}
这里就完成了对学生姓名表的存储.
--------------------------------------------------------------------------------------
为了让main方法里的代码看起来更有逻辑性,存储学生的这段代码块,可以封装成一个方法,又称为函数.
方法的定义格式:
修饰符 返回值类型 方法名 (类型 形式参数1,类型 形式参数1 ,…) {
执行语句;
return 返回值;
}
修饰符 : 目前是public static
返回值类型 : 方法可以有返回值,也可以没有返回值,具体是否有要看代码的需求,但是如果有返回值,则需要在执行语句之后加上return
以及,具体返回的结果.如果没有返回值,则返回值类型写void,return也可以省略.
方法名 : 标识符
参数类型 : 任何参数类型都可以
形参 : 标识符
参数是否需要也是根据代码需求而定.
方法使用注意:
如果有返回值则需要用一个相应的返回值变量接收或者直接打印等动作.
如果有参数则需要在调用时就传入参数.
----------------------------------------------------------------------------------------
2.针对购物小票的重构,方法的抽取.
a.成员变量
成员变量位置是在方法之外,不在任何方法之内,方便任何方法调用数据所以需要定义一些成员变量.
定义原则,如果有多个方法都会访问到的一个变量,一般都会定义为成员变量.
目前方法都是static,因为静态方法只能访问静态的成员变量,所以需要在成员变量前边家上static
b.方法抽取
抽取原则:方法的出现一是为了代码的阅读性,二是可以提高代码的复用性,更是可以方便查询错误或者纰漏.
抽取的时候一般是以功能代码块直接提取
或者是出现过多次使用的功能
3. 超市购物小票加入全天购物总收入统计功能
a.流水
超市流水分两个步骤
1)记录流水
在用户结账之后就可以进行一次记录,没结一次账就记录一次流水即可,把所有记录的流水都存入一个数组中
方便之后查询
2)查询流水
查询流水是需要单独设置方法的,单独的一个case
其中共同使用的是同一个流水数组所以这个数组需要定义为成员变量
还需要用同一个脚标去索引,所以索引也需要定义在成员变量中.
b.总金额
总金额就是这天的流水相加,从0索引开始相加到最后一个结账的索引即可,也需要用到流水数组和流水索引.
|
|