Java作业:第二次过程性考核 ——长春职业技术学院 16级网络工程
## 时间有限,脑力不足
## 只给出代码部分(附带注释)
码云 https://gitee.com/SoridoD/codes
7-5:
import java.util.Scanner;
class Person{
private String name; //题目要求private
private int age;
private boolean gender;
private int id;
Person(){
System.out.println("This is constructor");
System.out.printf("%s,%d,%b,%d\n",name,age,gender,id); //布尔型 %b
}
public Person(String a,int b,boolean c){
name=a;
age=b;
gender=c;
}
public String toString(){ //覆盖toString,要用String类型 返回,否则报错
String className=this.getClass().getName(); //获取此对象类名
return (className+" [name="+name+", age="+age+", gender="+gender+", id="+id+"]");
}
//以下是 setter,getter部分 实际题中没用到
public void setname(String name){
this.name=name;
}
public String getname(){
return name;
}
public void setage(int age){
this.age=age;
}
public int getage(){
return age;
}
public void setgender(boolean gender){
this.gender=gender;
}
public boolean getgender(){
return gender;
}
public void setid(int id){
this.id=id;
}
public int getid(){
return id;
}
}
public class Main{
public static void main(String[] args){
Scanner read=new Scanner(System.in);
int n=read.nextInt(); //对象数量
int i; //用于循环
Person[] personS; //对象数组声明 (题中要求逆序,所以要保存数据)
personS=new Person[n]; //对象数组初始化
/*
nextInt()控制台输入后自带/n
nextLine()获取控制台/n前的输入
*/
read.nextLine(); // 获取前面nextInt的/n。如果没有此行,会导致for第一次循环中的read.nextLine被跳过
for (i=0;i<n;i++){
String readLine=read.nextLine(); //获取控制台的一行输入,赋值给字符串readLine
String data[]=readLine.split(" "); //将字符串readLine以空格为分隔,赋值给字符串组data
personS[i]=new Person(data[0],Integer.valueOf(data[1]),Boolean.parseBoolean(data[2])); //创建对象
}
for (i=n-1;i>=0;i--){ //逆序输出
System.out.println(personS[i].toString());
}
Person personNone=new Person(); //无参构造
System.out.println(personNone.toString());
}
}
7-6:
import java.util.Scanner;
import java.util.Arrays; //用于排序
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int[] grade = new int[5]; //声明数组
for(int i=0; i<grade.length; i++){
grade[i] = in.nextInt();
}
RR rr = new RT(grade);
double dd = rr.mark();
System.out.printf("%.2f",dd);
}
}
abstract class RR{
int[] grade;
public RR(int[] grade){
this.grade = grade;
}
public abstract double mark();
}
class RT extends RR{
RT(int[] grade){
super(grade); //调用父类有参构造函数
}
public double mark(){
Arrays.sort(grade); //将数组 升序排序
return (double)(grade[1]+grade[2]+grade[3])/3; //求平均值
}
}
7-7:
public class Main {
public static void main(String[] args) {
Son son = new Son();
son.method();
}
}
class Parent {
Parent() {
System.out.println("Parent's Constructor without parameter");
}
Parent(boolean b) {
System.out.println("Parent's Constructor with a boolean parameter");
}
public void method() {
System.out.println("Parent's method()");
}
}
class Son extends Parent {
Son() {
super(true); //调用父类有参构造 ()内true或false都可以
System.out.println("Son's Constructor without parameter");
}
public void method() {
System.out.println("Son's method()");
super.method();
}
}
7-8:
import java.util.Scanner;
class Point{
double x; //x坐标
double y; //y坐标
Point(double x,double y){
this.x=x;
this.y=y;
}
public double distance(Point a){
//和另一个点的距离
//math.abs 绝对值,sqrt 根号,pow 幂
return Math.abs(Math.sqrt(Math.pow((this.x-a.x),2)+Math.pow((this.y-a.y),2)));
}
}
public class Main{
public static void main(String[] args){
Scanner read=new Scanner(System.in);
//题目只输入两个点,所以未用for循环
String readLine=read.nextLine(); //获取控制台一行 赋值给字符串readLine
String[] data=readLine.split(" "); //将字符串readLine以空格为分隔 赋值给字符串组data
Point pointA=new Point(Integer.valueOf(data[0]),Integer.valueOf(data[1])); //创建对象 点A
readLine=read.nextLine();
data=readLine.split(" "); //之前有声明 所以不用String
Point pointB=new Point(Integer.valueOf(data[0]),Integer.valueOf(data[1])); //创建对象 点B
System.out.printf("%.2f",pointA.distance(pointB)); //保留两位输出
}
}
Java作业:第二次过程性考核 ——长春职业技术学院 16级网络工程的更多相关文章
- Java作业:第一次过程性考核 ——长春职业技术学院 16级网络工程
Java作业:第一次过程性考核 ••<结构化程序设计>•• 考核目标:初步了解Java基本语法规则,学习结构化程序设计思想. 码云链接:https://gitee.com/SoridoD/ ...
- Java作业:第四次过程性考核 ——长春职业技术学院 16级网络工程
Java作业:第四次过程性考核 码云链接:https://gitee.com/SoridoD/java_kaohe4 (时间匆忙没打注释,真有急事) (客户端和服务器会自动创建表,所以没有sql ...
- Java实训:实训一 ——长春职业技术学院 16级网络工程
Java实训:实训一 本文会解释一些设计思路. 想看具体过程,请转:https://www.cnblogs.com/lxwlxw/p/10114187.html 笑维的码云项目命名不太对,所以我来:h ...
- 福建工程学院16级第一周寒假作业E题----第七集,奇思妙想
第七集,奇思妙想 ...
- 2017-2018-1 JAVA实验站 第二周作业
2017-2018-1 JAVA实验站 第二周作业 小组成员: 组长 20162318张泰毓 成员 20162303石亚鑫 20162304张浩林 20162307张韵琪 20162321王彪 201 ...
- JAVA入门第二季(mooc-笔记)
相关信息 /** * @subject <学习与创业>作业1 * @author 信管1142班 201411671210 赖俊杰 * @className <JAVA入门第二季&g ...
- 初识Java作业
初识Java作业 一. 填空题 Java技术按照用途不同分为三大版本,分别是JavaSE. javaEE 和JavaMe Java虚拟机就是一个虚拟的用于执行 .class ...
- java的第二个实验——JAVA面向对象程序设计
java的第二个实验——JAVA面向对象程序设计 北京电子科技学院 实 验 报 告 课程:Java程序设计 班级:1352 姓名:林涵锦 学号:20135213 成绩: ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第二周学习总结
丁宣元 <面向对象程序设计(java)>第二周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...
随机推荐
- 629D - Babaei and Birthday Cake
题意:给定n个圆柱体的半径和高,输入顺序即圆柱体的编号顺序.现在规定,只有编号和体积均大于另一个圆柱体,才能放到另一个圆柱体的体积上面.求能叠加的最大体积是多少. 酝酿了我三天,才理解.自己敲个代码, ...
- python进阶(一)
一.调试Debugging应用 (1)命令行内运行 $ python -m pdb my_script.py 这会触发debugger在脚本第⼀⾏指令处停⽌执⾏.这在脚本很短时会很有帮助.你可以通过( ...
- Java基础学习-常量和变量
1.常量概述 -在程序执行的过程中,其值不可以发生改变的量. 2.常量的分类 -字符串常量 用双引号括起来的内容("HelloWorld") -整数常 ...
- line-height各类属性值
line-height支持属性值 1.normal(默认属性) 跟着用户的浏览器走,且与元素字体关联 normal值 = 字体大小/100 2.<number> 使用数值作为行高值.如:l ...
- HDU 3567 Eight II(八数码 II)
HDU 3567 Eight II(八数码 II) /65536 K (Java/Others) Problem Description - 题目描述 Eight-puzzle, which is ...
- 关于djangorestframework相关源码分析
CBV APIView Request 局部全局钩子 认证组件 权限组件 频率组件 分页器组件
- Docker学习(转)
1.简介 Docker是一个开源的应用容器引擎:是一个轻量级容器技术: Docker支持将软件编译成一个镜像:然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像: 运行中的这 ...
- Ocelot概述
Ocelot是一个基于netcoreapp2.0构建,.NET Core框架下的开源Api网关项目,用于开发基于.NET微服务架构或面向服务架构系统的统一入口.
- canvas连线特效
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- day4——无重复字符的最长子串
// 小白一名,0算法基础,艰难尝试算法题中,若您发现本文中错误, 或有其他见解,往不吝赐教,感激不尽,拜谢. 领扣 第2题 今日算法 题干 //给定一个字符串,请你找出其中不含有重复字符的 最长子串 ...