java字符串练习题1、反向输出字符串
反向输出字符串,这里的含义是给定一个字符串例如:我爱你,反向输出的结果就是:你爱我。
在基础的字符串长度中我们可以很简单的调换,甚至直接反向通过下标的方式进行输出,但是如果很多呢,那么我们就来分析一下,然后对比一下相同长度的字符串反向输出那种效率最高。
测试语句就是【我爱你】以及输出【你爱我】。
方法1:下标直接反向charAt输出
charAt(int index) 方法直接了当,它是将字符串按照index索引抽出来,抽出后每一个字符都是一个独立的String类型,所以我们反向输出即可。
package com.item.action; public class Demo { public static void main(String[] args) { String s="我爱你"; for (int i = s.length()-1; i > -1; i--) { System.out.print(s.charAt(i)); } } }
方法2:toCharArray字符串转char数组反向输出法
我们使用toCharArray直接通过下标反向输出即可。下面是代码示例,与方法1类似,我们没有测试效率呢,一会测试看看。
package com.item.action; public class Demo { public static void main(String[] args) { String s="我爱你"; char[] arr = s.toCharArray(); for (int i = arr.length-1; i > -1; i--) { System.out.print(arr[i]); } } }
输出结果:
方法3、StringBuilder反向输出函数reverse()
由于StringBuilder直接给了反向输出的函数,我们直接调用即可。
package com.item.action; public class Demo { public static void main(String[] args) { String s="我爱你"; StringBuffer sb = new StringBuffer(s); String s1 = sb.reverse().toString(); System.out.println(s1); } }
效果:
运行效果测试:
给定最终测试字符串:约1800字
1、春水四泽是你的爱恋,夏云绕峰是你的缠绵,秋月扬辉是你的温柔,冬梅喜雪是你的情缘。 2、想你没有理由,爱你没有理由,在白天你是太阳,在夜晚你是月亮,下雨了你是我的雨伞,天冷了你是我的衣裳。 3、春宵酒醒,芬芳何寻? 4、你的微笑藏在我心里,春风吹我为你动了情,明月照我思念着你,往事历历在梦里,今生注定爱着你,真心真意永不分离。 5、缘起,在人群中,我看见你。缘灭,我看见你,在人群中。 6、如果可以和你在一起,我宁愿让天空所有的星光全部损落,因为你的眼睛,是我生命汇总最亮的光芒。 7、看到你的第一眼,我知道了什么叫一见钟情,从此,我要用心呵护你一辈子,祝你天天开心,永远漂漂亮亮。 8、答案很长,我准备用一生时间来回答,你准备听了吗? 9、相爱是一种很美好的感觉,与你相识、相知、相爱成就了这种美好,我深爱你和感谢你!愿与你携手一生,相恋、相伴、相守一辈子! 10、情话是看来的,情书是抄来的,套路是学来的,玫瑰是偷来的,勇气是借来的,爱你是天生的。 11、如果喜欢什么人,就要去找她,别在原地等哦。 12、我多么希望靠近你,感觉你散发的诱人的气息;多么希望你抱着我,体会那幸福的感觉!真的好想你!让我们用多一点点的辛苦,来交换多一点点的幸福。 13、两个人相遇,在一起不是目的,目的是要在那些“在一起”的日子一直保有初次见面的热切,欣喜和新鲜。为了对方,每天努力变得不一样,有新鲜空气的相守值得期待,呼吸彼此废气共度余生,就辜负了初遇的缘分。相爱不仅是朝夕相处,更是结伴前行。 14、因为爱你,所以我肝脑涂地! 15、亲爱的,我愿化作满天的星星,为你祝福,我愿成为甘甜的露水,滋润你生气的心灵,我愿做牛做马,只求你的一句可以宽恕。 16、在爱情的世界里,我一无所有,也一无所知,在情感的小站里,我愿你是第一位来客,也是永远的主人,伴着我宠着我:一生一世! 17、曾经人生酸辣苦,有了你之后,便凑齐了甜。 18、我是一条小小的船,船上装满了对你的爱。我经过风暴,游过险滩,不顾一切向你划来。你永远是我停泊的边岸,你永远是我避风的港湾。 19、时间过得真快,一转眼,进入盛夏,暑气逼人。算了算,离最近一次写心情日志的时间,已经过去一个多月了。再敲键盘,指尖生涩,似有许多话要说,却又一时不知从何说起。 20、少和别的女孩子说话,晚上早点睡觉别熬夜。 21、我曾踏月而来,只因你在山中。 22、微风轻轻起,我好喜欢你。 23、走过曲曲折折,才懂得家最温馨。 24、你愿意做我的女朋友吗?如果不愿意,那就换我做你的男朋友! 25、总有一天,你会遇到一个彩虹般绚烂的人,怦然而心动,就如我。 26、不论天涯海,只要你需要我的时候,我就会“飞”回你的身边。 27、是缘分太少,离别太早,互相珍重,就好。 28、我们从来没有抱怨过老天的不公,只是默默的努力、彼此的鼓励。因为我们相信只有努力才可以得到需要的。真心的谢谢你陪我一路走来。 29、如果说每一次选择就是一种放弃,那么就要看你是否承受得了那些放弃!选择了你我放弃了所有的不幸! 30、想把世界都给你,惯到生活不能自理。 31、你可知我百年的孤寂,只为你一人守候千夜的恋歌,只为你一人而唱。 32、日子过得很慢,生活过得很烂,除了想你,其他,我什么都做不好。 33、曾经迷惘的心中,是你牵引我走出寂寞。 34、未来的日子里,希望每天都有你! 35、亲爱的,没有我的日子里你一个人还好吗?只要两颗心在一起,就不怕寂寞来袭。在没有我的日子里,记得照顾好自己哦! 36、抱着你是一种快乐,吻着你是一种陶醉,爱着你是一种刻骨铭心,所以我会用我的一生来换取这份感觉! 37、我一生最奢侈的事,就是途中与你相遇,然后相濡以沫,共闻花香。 38、这世界最好看的风景,最动人的情话,都比不上你看着我时含笑的眼睛。 39、你听听我的心跳,有没有发现,我对你心动了。 40、遇到你心跳加快,不见你心情变坏,梦见你时间溜得太快,拥有你是不是漫长的等待? 41、没有尊重,爱会走掉。没有在乎,爱会无聊。没有诚实,爱会不爽。没有信任,爱会不牢。 42、距离不代表分离;没联络不代表忘记;没通电话不代表冷落;没见面更不是没关心你;在凉爽的季节里,我会牵挂你! 43、喜欢你,用打字很容易,用写的也很容易,别人说的也很容易,可是为什麼当著你的面,我就是说不出来。 44、原谅我将你的手机号码告诉了一个陌生人,他叫丘比特,他要帮我告诉你;我心喜欢你,我心在乎你,我心等待你。 45、别人都说我们的关系就像鱼和水。我想做你这个水里的鱼!
方法1用时4毫秒
方法2用时5毫秒
方法3用时1毫秒
总结
总效率上看,方法3用时最少,仅仅1毫秒,方法3通过StringBuilder的反向输出函数reverse()效率是最高的。