学习笔记 DAY 57
坚持是一件说起来容易,做起来不容易的事情。
#实例
有很多程序会对数据信息进行保护,保护方式包括对登录程序的用户进行账户和密码校验等。
对用户所输入的用户名和密码进行验证是地常采用的用户登录校验方式。如用链巩户输入的用户名和密码与保存在数据库中或文件中的原始注册信息相吻合,为是合法用户,允许其进入系统,用户可获得相应的系统操作权限和系统数据信否则,就认为其是非法用户,拒绝其登录。
请看下面这个实现用户登录验证的程序,注意这里只对用户输入的用户名和密码进行校验。
import java.util.Scanner;public class UserLogin {publicstaticvoidmain(String[] args) {//定义输入对象Scanner scanner = new Scanner(System.in);//声明固定用户名String mailbox = "wanglaoshi@qq.com";//声明原始密码String password = "56789";//获得用户输入的用户名和密码String userName, userPwd;//用trim() 方法消除字符串首尾的空格userName = scanner.next().trim();userPwd = scanner.next().trim();//判断是否输入了用户名和密码if (userName == null || userPwd == null) {System.out.println("请输入用户名和密码!");//立即结束程序并返回,后面的代码不再执行return;}//将用户输入的账户信息与系统保存的账户信息进行比较if (userName.equals(mailbox)) {//如果用户输入用户名与程序中固定用户名不同System.out.println("抱歉,您的用户名不正确!请重新输入");} else if(userPwd.equals(passwd)) {//如果用户输入的密码与程序中原始密码不同System.out.println("抱歉,您的密码不正确!请重新输入");} else {//如果用户名和密码都正确//查找用户名中有没有符号@int index = mailbox.indexOf('@');//截取@前的用户名String name = mailbox.substring(index + 1);System.out.println(name + ",欢迎您!您已经通过验证,可以进行操作!");}}}
需注意在实际的程序开发过程中,原始用户名和密码一般来于收7.5 实侧 169库、文件或其他保存数据的地方,上述案例中对此进行了简化,用户名和密码被设置为固定的值,编码在程序中了。
上述案例中用来判断用户登录时是香输人了用户名和密码的代码如下。
if(userName-null || userPwd= null){System.out.println("请输入用户名和密码!");return; //立即结束程序返回,后面的代码不再执行}
最后,程序调用Sting类的equals()方法,将用户输人的账号密码与系统中保存的账号密码进行比对,如果互相匹配,则提示用户登录成功;否则,给出相应的敖有示信息。
程序运行结果为:
wanglaoshi@qq. com56789wanglaoshi,欢迎您!您已经通过验证,可以进行操作!
2、#敏感词过滤程序
在实际开发中,很多软件会对一些敏感词进行过滤。它们常用的处理方式是将这些敏感词过滤或用其他词语替换掉。在实际应用中,敏感词一般来源于数据库或数据文件。
其实现方式通常是将用户输入的内容保存到一个字符串对象或StringBuilder对象中,然后跟数据库里保存的敏感词进行对比,一旦发现与任何敏感词匹配,就会对其进行过滤或替换。
下面的代码实现了对简单的敏感词过滤的功能。
import java.util.Scanner;/**敏感词过滤*/public class SensitiveWordFiltration {publicstaticvoidmain(String[] args) {//设置敏感词//需要屏蔽的敏感词String[] arr1 = {"山寨", "敏感", "gta"};//需要被替换的敏感词String[] arr2 = {"暴力", "毒品", "赌博"};//接收用户通过控制台传递来的参数字符串,模拟用户的聊天内容Scanner sca = new Scanner(System.in);String[] arr3 = new String[3];arr3[0] = sca.next().trim();if (arr3.length < 1) {System.out.println("没有输入聊天内容,请重新输入!");//立即结束程序并返回,后面的代码不再执行return;}String s = arr3[0];//将用户聊天内容与需要屏蔽的敏感词进行匹配for (int i = 0; i < arr1.length; i++) {//查找要屏蔽的敏感词int index = s.indexOf(arr1[i]);//如果查找到了敏感词if (index != -1) {//以空字符串屏蔽掉敏感词s = s.replaceAll(arr1[i], "");}}//将用户聊天内容中需要替换的敏感词替换掉for (int i = 0; i < arr2.length; i++) {//查找要替换的敏感词int index = s.indexOf(arr2[i]);// 以指定字符串替换掉敏感词if (index != -1) {s = s.replaceAll(arr2[i], "文明");}}//输出过滤以后的聊天内容System.out.println("您的聊天内容为:" + s);}}
在以上程序中,定义了以下两个敏感词字符串数组。
String[] arr1 = { "山寨", "敏感", "gta" }; // 需要屏蔽的敏感词String[] arr2 = { "暴力", "毒品", "赌博" }; // 需要被替换的敏感词
如果用户的聊天内容中有敏感词,例如“我喜欢山寨,我喜欢赌博”,那么程序运行结果为:
您的聊天内容为:我喜欢,我喜欢文明在上述代码中,arr1中的是应该被屏蔽掉的敏感词,当程序遇到这些词时,不会将其显示出来。arr2中的则是应该被替换掉的敏感词,会统一被“文明”一词代替。

(从基础背景开始学起,坚持,是一件不容易的事情。)

文章推荐
AI基础学习第二阶段笔记:从0开始学Java“搭建Java程序开发环境”
AI基础学习第二阶段笔记:从0开始学Java“开发第一个Java应用程序”
请在微信客户端打开
文 | Lisa Notes
Lisa Notes |一个Lisa’s notes:生活、工作、学习中那些事儿,感悟自我成长,随心随笔杂谈。微信搜索「Lisa Notes」(ID:Lisa-notes),查看更多信息,原创小说,PPT干货分享。

长按♥一键关注
特别声明
本文为自媒体、作者等在微信公众号上传并发布,仅代表作者观点,不代表微信公众号的观点或立场,微信公众号仅提供信息发布平台,最终解释权归本人所有。合作请联系13698281600@163.com。
全世界只有不到0.03%的人
关注小SA
你真是个特别的人
快戳我!快戳我!快戳我!㊋㊋㊋
夜雨聆风