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. eureka ... is an unknown property 在 application.properties 中

    问题如图 在application.properties中无法识别eureka   解决方式 (想了想这个好像是在某个依赖里面来的)发现 eureka 是在 某个依赖里面 所以添加了以下之后就解决了 ...

  2. sqlmap 使用总结

    一直在用sqlmap,一直在浅层的使用方面,所以我想深入了解一下sqlmap. 参考文章: Sqlmap使用教程[个人笔记精华整理]        http://www.vuln.cn/1992 sq ...

  3. 1259 整数划分 V2

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

  4. vue组件监听不生效,比深度监听还管用哦

    在Watch监听数组里面里加上 immediate: true, watch:{ myArrList:{ immediate: true, handler(curVal,oldVal){ consol ...

  5. Lock类-ReentrantLock的使用

    在Java多线程中可以使用synchronized隐式锁实现线程之间同步互斥,Java5中提供了Lock类(显示锁)也可以实现线程间的同步,而且在使用上更加方便.本文主要研究 ReentrantLoc ...

  6. ASP.NET Core中使用Autofac

    ⒈添加相关依赖 Install-Package Autofac ⒉扫描项目接口实现类 using Autofac; using System; using System.Collections.Gen ...

  7. Python 面向对象【2】

    组合 [适合没干系的横向类,比如池塘,乌龟,鱼]  把类的实例化放到新类里面     属性名和方法名相同,属性会覆盖掉方法   绑定 方法需要实例才能被调用!! 这种限制即绑定 用self接受绑定   ...

  8. LwIP Application Developers Manual12---Configuring lwIP

    1.前言 2.LwIP makefiles With minimal features C_SOURCES = \ src/api/err.c \ src/core/init.c \ src/core ...

  9. 【BZOJ 2119】股市的预测(SAM)

    SAM很好用的啊... 传送门 双倍经验:L-Gap Substrings 基本做法类似,这道题的差分改掉,map 改掉就好了QWQ noteskey 反正就是先差分一下,然后把首项丢掉(没有比较的对 ...

  10. 博客主Judge已跳槽搬家emmm

    跳槽网站:博客园 顺便带一下:洛谷blog (好久没更了QAQ...) ### 不过csdn上还是会照常更新的,毕竟用着方便