Java-字符串练习
1. 用自己的算法实现startsWith和endsWith功能。
String str="dsjhajdl";
Scanner sc=new Scanner(System.in);
System.out.println("输入英文字符:");
String st=sc.nextLine();
int s=str.indexOf(st);
if(s==0)
{
System.out.println("输入是第一位字符");
}
else
{
System.out.println("输入不是第一位字符");
}
2.采用字符的移位方式实现字符文本加密解密。
Scanner sc=new Scanner(System.in);
System.out.println("请输入加密的字符串");
String st=sc.nextLine();
System.out.println(st.replaceAll("a", "B").replaceAll("b", "C").replaceAll("c", "D").replaceAll("d", "E").replaceAll("e", "F").replaceAll("f", "G").replaceAll("g", "H").replaceAll("h", "I").replaceAll("i", "J").replaceAll("j", "K").replaceAll("k", "L").replaceAll("l", "M").replaceAll("m", "N").replaceAll("n", "O").replaceAll("o", "P").replaceAll("p", "Q").replaceAll("q", "R").replaceAll("r", "S").replaceAll("s", "T").replaceAll("t", "U").replaceAll("u", "V").replaceAll("v", "W").replaceAll("w", "X").replaceAll("x", "Y").replaceAll("y", "Z").replaceAll("z", "A"));
3.随机生成4位验证码,由用户输入并验证是否输入正确,如果输入错误就生成新的验证码让用户重新输入,最多输入5次
String str="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
char[]arr=new char[4];//定义一个长度是4的char型数组
Random sj=new Random();
System.out.println("验证码是:");
for(int i=0;i<4;i++)
{
arr[i]=str.charAt(sj.nextInt(61));//从str中随机截取4个单个字符并赋值给arr这个数组存放
}
System.out.println(arr);
Scanner sc=new Scanner(System.in);
System.out.println("请输入验证码");
String a=new String(arr);//把数组转换成字符串
//定义输入次数
for(int j=0;j<5;j++)
{
if(sc.nextLine().equals(a))
{
System.out.println("验证码输入正确");
}
else
{
System.out.println("验证码输入有误,请重新输入");
if(j<=3)
{
System.out.print("请输入验证码");
for(int i=0;i<4;i++)
{
arr[i]=str.charAt(sj.nextInt(61));//从str中随机截取4个单个字符并赋值给arr这个数组存放
}
System.out.println(arr);
a=new String (arr);
}
else
{
System.out.println("输入有误,对不起,5次机会已用完");
}
}
}
Java-字符串练习的更多相关文章
- Java 字符串格式化详解
Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...
- (转)Java字符串
转自:http://blog.sina.com.cn/s/blog_899678b90101brz0.html 创建字符串有两种方式:两种内存区域(字符串池,堆)1," " 引号创 ...
- Java字符串split函数的注意事项
Java字符串的split方法可以分割字符串,但和其他语言不太一样,split方法的参数不是单个字符,而是正则表达式,如果输入了竖线(|)这样的字符作为分割字符串,会出现意想不到的结果, 如, Str ...
- 关于java字符串编译优化问题
情景一:不好的字符串拼接习惯 起因是这样的:一个大牛在写了一篇关于java字符串优化问题的讲解,他提到:不要使用strObj+otherValue的方法将otherValue转换为字符串形式,因 ...
- Java字符串排列算法
Java字符串排列算法 题目:现有ABCDE 5个球 构成的排列组合 可重复抽取 最多取到16个 共有多少种组合方式? 比如:取1个球可以构成的组合有 A B C D E 共5种,取2个球可以构成的组 ...
- Java字符串转换
public class StringConvertToInt{ public static void main(String[] args) { String a ="12a34bW()5 ...
- Java字符串null相加
Java字符串null相加 最近和同事讨论了下面的一段代码: String a = null; a += a; System.out.println(a); 运行结果: nullnull 本着学习的态 ...
- JAVA字符串格式化String.format()的使用
JAVA字符串格式化-String.format()的使用常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprin ...
- Java字符串的10大热点问题,你都懂吗?
转自 威哥干JAVA http://www.codingke.com 下面我为大家总结了10条Java开发者经常会提的关于Java字符串的问题,如果你也是Java初学者,仔细看看吧: 1.如何比较字符 ...
- java 字符串为空问题
java 字符串为空问题 String testStr = null; System.out.println(testStr); if (testStr == null) { System.out.p ...
随机推荐
- D3(Data-Driven-Document)中的一些细节
不定期更新,给自己看,如果能帮到别人,我也很开心. 1)好像 function中默认的两个参数d,和i,如果只有i,则i实际上是d 的内容. lineG.selectAll("line&qu ...
- Django提交POST表单“CSRF verification failed. Request aborted”问题的解决
1.环境 python 3.4 Django 1.7 Visual Studio 2015 PTVS 2.问题 提交表单,出现以下错误: CSRF verification failed. Reque ...
- node.js之path
说到node.js,可能实际中用到node进行后台开发的公司不多,大部分人都没有开发后台的经验.但是也要了解node相关模块的用法,因为现在前端自动化脚本的构建,模块的打包越来越离不开node.特别是 ...
- 快手 KSCAD 5.0 矢量图形设计软件
今天我的快手软件发布了一个最新版本 KSCAD 5.0,免费使用, 详情请看 www.timegis.com 快手 5.0 (KSCAD) 是一款简单易用的矢量绘图软件,其功能和Visio类似,可以绘 ...
- MySQL入门手册
本文内容摘自MySQL5.6官方文档,主要选取了在实践过程中所用到的部分文字解释,力求只摘录重点,快速学会使用MySQL,本文所贴代码地方就是我亲自练习过的代码,凡本文没有练习过的代码都没有贴在此处, ...
- Python 5 —— OOP
OOP class MyClass: y = None def __init__(self,x,y): self.__x = x self.y = y def getx(self): return s ...
- Linux内核分析之扒开系统调用的三层皮(下)
一.实验内容 1. 通过内核的方式使用系统调用 需要使用的命令 rm menu -rf //强制删除当前menugit clone http://github.com/mengning/menu.gi ...
- HDU5361 In Touch(线段树 + 最短路)
传送门 恰逢才做过VFK的A+B Problem,发现这道题也可以那样搞.区间连边的时候,我们就可以给那个区间在线段树对应的标号上连边. 线段树也可以不建出来,直接当做一个标号的合集,不占用内存,只用 ...
- sqlserver 2008 数据库表结构脚本及数据导出
sqlserver2008 在xp上尝试安装了 sqlserver2008 express版本,但是和公司的sqlserver2008 r2 版本不兼容.升级的时候,出了问题.所以换了中思路,将数据 ...
- angularjs 表单验证(不完整版)
针对项目实践表单验证总结: angular 的 form表单验证:form内需要novalidate取消默认验证,用ng自己的验证,form的名字是非常必要的 栗子:以注册为栗子,下面是注册的部分: ...