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/ 这个作业的要求在 ...
随机推荐
- dict字典的一些优势和劣势
01. 键必须是可散列的一个可散列的对象必须满足以下要求. (1) 支持 hash() 函数,并且通过 __hash__() 方法所得到的散列值是不变的. (2) 支持通过 __eq__() 方法来检 ...
- Cent OS6下SS+BBR+改SSH端口
SS+BBR+改SSH端口 (一)搭建SS wget --no-check-certificate -O shadowsocks-libev.sh https://raw.githubusercont ...
- C# DataGridView 动态添加列和调整列顺序
https://yq.aliyun.com/articles/421700 // DataGridView1的ColumnDisplayIndexChanged事件处理方法private void D ...
- Linux 文件内容查看(cat、tac、nl 、more 、less、head、tail )
Linux系统中使用以下命令来查看文件的内容: cat: 由第一行开始显示文件内容tac :从最后一行开始显示,可以看出 tac 是 cat 的倒著写!nl: 显示的时候,顺道输出行号!more ...
- MVVM以及vue的双向绑定
原文:https://www.cnblogs.com/onepixel/p/6034307.html MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,其核 ...
- 博客搬家一下到CSDN
博客搬家一下到CSDN:http://blog.csdn.net/weixin_33409246
- java,桶排序,冒泡排序,快速排序
1.桶排序: 百度百科:桶排序 (Bucket sort)或所谓的箱排序,是一个排序算法,工作的原理是将数组分到有限数量的桶子里.每个桶子再个别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排 ...
- python 数据分类汇总
STEP1: #读取数据: import pandas as pdinputfile_1 = "F:\\大论文实验\\数据处理\\贫困人口数据_2015.xlsx" data1 = ...
- Matlab:双曲方程
tic; clear clc M=[, ];%空间步数 N=*M;%时间步数 :length(M) h=/M(k);%空间步长 tau=/N(k);%时间步长 s=tau/h;%步长比 x=:h:; ...
- XAMPP启动Apache时发生ERROR
XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,是一个易于安装且包含 MySQL.PHP 和 Perl 的 Apache 发行版.XAMPP 的确非常容易安装和 ...