第一题:需求实现
定义HandleAble接口,具备一个处理字符串数字的抽象方法方法HandleString(String num)。
处理方式1:取整数部分。
处理方式2:保留指定位小数,四舍五入。
代码实现,效果如图所示:
开发提示:
匿名内部类的方式,调用所有抽象方法。
参考答案:
public class Test1 {
public static void main(String[] args) {
String str = "23.23456789";
System.out.println("原数字字符串:" + str);
HandleAble s1 = new HandleAble() {
@Override
public String handleString(String str) {
return str.substring(0, str.indexOf("."));
}
};
String string = s1.handleString(str);
System.out.println("取整后:" + string);
int num = 4;
HandleAble s2 = new HandleAble() {
@Override
public String handleString(String str) {
int i = str.indexOf(".") + num + 1;
char c = str.charAt(i);
//System.out.println(c);
if (c <= '4') {
return str.substring(0, i).toString();
} else {
char c1 = (char) (str.charAt(str.indexOf(".") + num) + 1);
return str.substring(0, i - 1) + c1;
}
}
};
String sss = s2.handleString(str);
System.out.println("保留" + num + "位小数后:" + sss);
}
}
interface HandleAble {
public abstract String handleString(String str);
}
第二题:需求实现
模拟上课出勤情况。
定义学生类:
属性:姓名,出勤。
提供基本的构造方法和get方法,set方法。
定义讲师类:
属性:姓名。
提供基本的构造方法和get方法,set方法
成员方法:点名方法,设置每一位的学生出勤情况。假设,小明今日未出勤。
定义课程类:
属性:课程名称,讲师,学生集合。
提供基本的构造方法和get方法,set方法
成员方法:show方法,打印课程信息,老师姓名,学生是否上课情况。
代码实现,效果如图所示: