JAVA:模拟提交JAVA作业

发现几个问题:

  • 带参方法并非任何时候都好用
  • 使用this引用会导致错误
  • 利用了局部变量的一些好处(例如:index,index1)

运行效果图:

模拟提交JAVA作业运行截图
image-1350

参考代码1:


package cn.puruidong.accp_15;
/**
* @author PuRuidong
*
*/
import java.util.Scanner;
public class Test5 {

public String name ; //名字
private String pre ; //密码
private String newname ; //验证名字
private String newpre ; //验证密码
private String mail ; //邮箱
private String file ; //java文件名
private boolean loginzhi ;//登录验证
private int index ; //indexOf方法定义
private int index1 ; //lastIndexOf方法定义
private Scanner sc = new Scanner (System.in);

public String inname (){
System.out.println("********注册系统*********");
boolean namezhi = false ;//定义循环
do {
System.out.println("请输入用户名(长度不小于5位):");
name = sc.next(); //录入用户名
if (name.length()<5){ System.out.println("用户名长度必须大于5位."); System.out.println("请重新录入!"); namezhi = true ; continue ; } else{ namezhi = false; } } while (namezhi!=false); return name ; //返回用户名 } public String inpre (){ boolean prezhi = false ; do { System.out.println("请输入密码不小于6位,并且必须包含小写字母:java):"); pre = sc.next(); //录入密码 index= pre.indexOf("java"); if (pre.length()<6||index==-1){ //密码长度小于6,或者没有在密码中找到java字样则重复录入 System.out.println("密码长度必须大于6位!或者密码中不包含java!"); System.out.println("请重新录入!"); System.out.println(); prezhi = true ; } else { prezhi = false ; } } while (prezhi!=false); return pre ; //返回密码 } public String inmail (){ this.mail=mail; boolean mailzhi = false ; do { System.out.println("请输入邮箱:"); mail = sc.next(); //录入邮箱 index = mail.indexOf("@"); index1 = mail.lastIndexOf("."); if (index1==-1||index==0||index==-1||index>index1||(index+1==index1)){ //判断.是否在@的后面
System.out.println("对不起,邮箱格式输入错误!");
System.out.println("请重新录入!");
System.out.println();
mailzhi = true ;
} else {
mailzhi = false ;
}

} while (mailzhi!=false);
return mail ; //返回邮箱
}

public boolean login (boolean loginzhi){
System.out.println("********登录系统*********");
loginzhi = false ;
for (int i=4;i>0;i--){
System.out.println("请输入用户名(用户名与密码均忽略大小写):");
newname = sc.next();//验证用户名
System.out.println("请输入密码:");
newpre = sc.next(); //验证密码
if (newname.equalsIgnoreCase(name)&&newpre.equalsIgnoreCase(pre)){
//验证用户名与原用户名是否相等,或者邮箱与原邮箱是否相等,验证密码
System.out.println("恭喜,登录成功!");
System.out.println("");
loginzhi = true ; //登录成功标记
break ;
} else {
System.out.println("抱歉,输入错误!");
System.out.println("您还有"+(i-1)+"次输入机会!");
loginzhi = false ;//登录失败标记
}
}
if (loginzhi==false){ //一旦登录失败将退出程序,不再执行下方的部分
System.out.println("登录失败,程序退出,谢谢使用!");
System.exit(0); //退出程序
}
return loginzhi ;
}

public String infile (){
for (int i=4;i>0;i--){
System.out.println("请输入java文件名:");
file = sc.next(); //录入文件名
index = file.indexOf("."); //检查.的位置
index1 = file.lastIndexOf("java"); //检查java所在的位置
if (index==-1||index==0||index1==-1||index1

参考代码2(测试类):


package cn.puruidong.accp_15;

/**
* @author PuRuidong
*
*/
public class Ttest5 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Test5 center = new Test5();
boolean loginzhi = true ;
center.inname();
center.inpre();
center.inmail();
center.login(loginzhi);
center.infile();
center.show();
}

}

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据