2018年7月22日

  暑假第二周马上就要结束了,这一周我继续学习了java。

  本周学到了一些Java的修饰词,比如static、private、public等,这些修饰词用法与c++类似,很容易掌握。也学会了创建对象,学到了如何创建类的构造方法。还学到了如何使用Java里一些基础类的方法,比如String类、StringBuffer类。仅仅只是String类里就有30多种方法可供使用。除此之外,还学到了代码块、类的继承、方法的重写这些知识。

  本周花在学习上的时间估计达到25小时,周一至周五平均每天5小时学习Java的新知识,周六周日复习总结。其中,基本上每天都有1小时的时间练习代码。除此之外,我还尝试着做了做Java开学测试题,以下是我的代码,肯定会有好多地方可以优化,等以后我进一步掌握了Java再来修改吧。

import java.util.Scanner;
class Student {
private String stunumber,name;
private int age;
private boolean sex;
private double score;
public void setNumber(String a) {
stunumber=a;
}
public void setName(String a) {
name=a;
}
public void setAge(int a) {
age=a;
}
public void setSex(boolean a) {
sex=a;
}
public void setScore(double a) {
score=a;
}
public String getNumber() {
return stunumber;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public boolean getSex() {
return sex;
}
public double getScore() {
return score;
}
Student() {
stunumber="********";
name="***";
age=20;
sex=false;
score=100;
}
Student(String a,String b,int c,boolean d,double e) {
stunumber=a;
name=b;
age=c;
sex=d;
score=e;
}
}
class StudentManager {
int t=1;
Student[] s = new Student[50];
StudentManager() {
s[0] = new Student();
for(int i=1;i<50;i++)
s[i] = new Student("null","null",0,false,0.0);
} //遍历输出学生信息
public void showStudent() {
for(int i = 0;i<50 && s[i].getNumber().compareTo("null")!=0;i++) {
System.out.println("学号:" + s[i].getNumber());
System.out.println("姓名:" + s[i].getName());
System.out.println("年龄:" + s[i].getAge());
System.out.println("性别:" + s[i].getSex());
System.out.println("成绩:" + s[i].getScore() + "\n\n");
}
} //新学生信息录入
public void addStudent(String stunumber,String name,int age,boolean sex,double score) {
for(int i = 0;i<50 && s[i].getNumber().compareTo("null")!=0;i++)
if(s[i].getNumber().compareTo(stunumber)==0) {
System.out.println("学号重复,禁止添加!\n\n\n");
return;
}
s[t].setNumber(stunumber);
s[t].setName(name);
s[t].setAge(age);
s[t].setSex(sex);
s[t].setScore(score);
t++;
System.out.println("添加成功!\n\n\n");
} //删除学生信息
public void deleteStudent(String stunumber){
for(int i = 0;i<50 && s[i].getNumber().compareTo("null")!=0;i++)
if(s[i].getNumber().compareTo(stunumber)==0){
for(int j=i;j<49 && s[j].getNumber().compareTo("null")!=0;j++){
s[j].setNumber(s[j+1].getNumber());
s[j].setName(s[j+1].getName());
s[j].setAge(s[j+1].getAge());
s[j].setSex(s[j+1].getSex());
s[j].setScore(s[j+1].getScore());
}
s[49] = new Student("null","null",0,false,0.0);
System.out.println("删除成功!\n\n\n");
return;
}
System.out.println("无此学生,无需删除!\n\n\n");
} //修改学生信息
public void updateStudent(String stunumber,String name,int age,boolean sex,double score) {
for(int i = 0;i<50 && s[i].getNumber().compareTo("null")!=0;i++)
if(s[i].getNumber().compareTo(stunumber)==0){
s[i].setNumber(stunumber);
s[i].setName(name);
s[i].setAge(age);
s[i].setSex(sex);
s[i].setScore(score);
System.out.println("修改成功!\n\n\n");
return;
}
System.out.println("无此学生,无法修改!\n\n\n");
} //查询学生信息
public void selectStudent(String stunumber){
for(int i = 0;i<50 && s[i].getNumber().compareTo("null")!=0;i++)
if(s[i].getNumber().compareTo(stunumber)==0) {
System.out.println("学号:" + s[i].getNumber());
System.out.println("姓名:" + s[i].getName());
System.out.println("年龄:" + s[i].getAge());
System.out.println("性别:" + s[i].getSex());
System.out.println("成绩:" + s[i].getScore() + "\n\n\n");
return;
}
System.out.println("无此学生!\n\n\n");
}
}
public class StudentSystem {
public static void main(String[] args) {
StudentManager st = new StudentManager();
Scanner sc = new Scanner(System.in);
int k=0;
Boundary();
do{
int j = sc.nextInt();
switch(j)
{
case 1:st.showStudent();break;
case 2:
System.out.println("输入学生学号:");
String nu = sc.next();
System.out.println("输入学生姓名:");
String na = sc.next();
System.out.println("输入学生年龄:");
int ag = sc.nextInt();
System.out.println("输入学生性别:");
boolean se = sc.nextBoolean();
System.out.println("输入学生成绩:");
double sco = sc.nextDouble();
st.addStudent(nu,na,ag,se,sco);break;
case 3:System.out.println("输入学生学号:");
String nu2 = sc.next();
st.deleteStudent(nu2);break;
case 4:System.out.println("输入学生学号:");
String nu1 = sc.next();
System.out.println("输入学生姓名:");
String na1 = sc.next();
System.out.println("输入学生年龄:");
int ag1 = sc.nextInt();
System.out.println("输入学生性别:");
boolean se1 = sc.nextBoolean();
System.out.println("输入学生成绩:");
double sco1 = sc.nextDouble();
st.updateStudent(nu1,na1,ag1,se1,sco1);break;
case 5:System.out.println("输入学生学号:");
String nu3 = sc.next();
st.selectStudent(nu3);break;
default:return;
}
}while(k==0);
}
public static void Boundary() {
System.out.println("************************************************\n");
System.out.println(" 石家庄铁道大学信息科学与技术学院 \n");
System.out.println(" 学生信息管理系统V2.0 \n");
System.out.println("************************************************\n");
System.out.println(" 1.遍历输出学生信息; \n");
System.out.println(" 2.新学生信息录入; \n");
System.out.println(" 3.删除学生信息; \n");
System.out.println(" 4.修改学生信息; \n");
System.out.println(" 5.查询学生信息; \n");
System.out.println(" 6.退出系统; \n");
System.out.println("************************************************");
}
}

  本周遇到的问题很少,因为敲代码基本都是跟着视频在做,所以不会出什么问题。但是尝试做Java开学测试题时遇到了一些问题,这些问题很容易解决,百度一搜就OK了。

  下一周我会继续看教学视频学Java。按照进度,三周结束后,我基本能将Java基础全部掌握。

第二周学习总结-Java的更多相关文章

  1. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  2. 20145330孙文馨 《Java程序设计》第二周学习总结

    20145330孙文馨第二周学习总结 第二周相比于第一周对java语言有了深一点的了解,也意识到多敲代码才是学习计算机语言的最好方法. 教材内容总结 类型.变量与运算符 *基本类型 整数(short. ...

  3. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  4. 《Java程序设计》第二周学习总结

    20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...

  5. 20155304田宜楠 2006-2007-2 《Java程序设计》第二周学习总结

    20155304田宜楠 2006-2007-2 <Java程序设计>第二周学习总结 教材学习内容总结 一.类型与变量 1.类型 整数: 可细分为为short整数(占2字节),int整数(占 ...

  6. 2017面向对象程序设计(Java)第二周学习总结

    2017面向对象程序设计(Java)第二周学习总结 直系学妹学弟们好!额...不要问我为什么把学妹放前面,我也不知道!我只是你们和蔼可亲的学长一枚而已.也不要问为什么是第二周学习总结而不是第一周,因为 ...

  7. 201521123038 《Java程序设计》 第二周学习总结

    201521123038 <Java程序设计> 第二周学习总结 1.本章学习总结 学会在Java程序中使用函数,使程序层次更清晰 使用StringBuilder编写代码,减少内存空间的占用 ...

  8. 201521123093 java 第二周学习总结

    201521123093 <java程序设计> 第二周学习总结 一.第二周学习总结 答:(1)关于进一步使用码云管理代码,本周才真正学会了如何将Eclipse里的代码上传到码云中,并且能够 ...

  9. 20155303 2016-2017-2 《Java程序设计》第二周学习总结

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

随机推荐

  1. 1259 整数划分 V2

    设dp[n]为整数n的分割函数,由五边形定理得到: dp[n] = dp[n-1] + dp[n-2] - dp[n-5] - dp[n-7]…… 我们将其分为两部分计算 第一部分为 :( dp[n- ...

  2. 832B Petya and Exam

    题意:给你两个串,第一个串里面的字母都是good 字母, 第二个串是模式串,里面除了字母还有?和*(只有一个) ?可以替换所有good字母, *可以替换所有坏字母和空格(可以是多个坏字母!!!这点卡了 ...

  3. 解决 Qt5 报错 This application failed to start because it could not find or load the Qt platform plugin

    QT为了简化生成发布版本,特别提供了工具 "windeplayqt.exe",这个工具在 "...\Qt5.8.0\5.8\msvc2015_64\bin"的目 ...

  4. v2v-VMware/VSphere中虚机离线迁移至openstack平台

    先决条件 exsi到openstack的迁移,分为两种,一种是静态迁移,另一种是在线迁移. 静态迁移(offline migration)也叫做常规迁移,离线迁移.在迁移之前将虚拟机暂停,同时拷贝虚拟 ...

  5. Python-eval()函数

    python eval() eval(expression, globals= None, locals= None) --官方文档中的解释: 将字符串str当成有效的表达式子来求值并返回计算结果. ...

  6. Java异常处理之try-with-resources

    Oracle官方文档: http://docs.oracle.com/javase/7/docs/technotes/guides/language/try-with-resources.html 概 ...

  7. Shell基础总结

    一.用户登陆进入系统后的系统环境变量 $HOME 使用者自己的目录 $PATH 执行命令时所搜寻的目录 $TZ 时区 $MAILCHECK 每隔多少秒检查是否有新的信件 $PS1 在命令列时的提示号 ...

  8. vue之登录和token处理

    应用场景一 Vue刷新token,判断token是否过期.失效,进行登录判断跟token值存储 刷新token和token是否过期的操作都是由后端实现,前端只负责根据code的不同状态来做不同的操作: ...

  9. linux shell 进阶篇、shell脚本编程-创建函数

    使用函数 #!/bin/bash # testing the script function myfun { echo "This is an example of a function&q ...

  10. Git学习笔记07-删除文件

    在Git中,删除也是一种修改.先新建一个文件,添加并提交.然后删除下看看. 一般删除直接从工作区把文件删了,或者使用rm命令 ​ 这是使用git status查看状态,会告诉我们删了哪个文件 ​ 这个 ...