递归实现字符串反转-程序员宅基地

技术标签: c#  python  java  

如何不使用java类库实现字符串反转?

方法一:数组反转法

  将字符串转换成字符数组,对数组进行反转,再将反转后的数组转化成字符串。

方法二:逆序遍历法

  将字符串转换成字符数组,可对数组进行逆序遍历。

 

  public String reverseStr(String str){
        char[] c = str.toCharArray();
        StringBuilder sb = new StringBuilder();
        for(int i=c.length-1;i>=0;i--){
            sb.append(c[i]);
        }
        return sb.toString();
    }

 

 

方法三:递归法

 

  将字符串转换成字符数组,对数组进行反转,再将反转后的数组转化成字符串。

 

  public String reverseStr(String str){
        if(str.length() <= 1){
            return str;
        }
        return reverseStr(str.substring(1)) + str.charAt(0);
    }

 

转载于:https://www.cnblogs.com/studyDetail/p/7229002.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/a493862864/article/details/101783951

智能推荐

安卓刷机刷错导致无限闪屏_刷机后一直闪屏应用报错-程序员宅基地

文章浏览阅读354次。安卓努比亚z17s刷机不小心刷成了z17的包,重刷回官方包之后出现无限闪屏,该怎么办啊?求大佬们的救机方法,重启双清都搞过了,都没用求教程!最开始开机之后底图还有奇兔的recovery的背景图,现在不知道为什么没有这个底图了,但是还会无限闪屏,想自己学学搞机,求大佬赐教!!..._刷机后一直闪屏应用报错

Qt中mouseMoveEvent在MainWindow中使用_qt mousemoveevent只能在鼠标按下时才反应-程序员宅基地

文章浏览阅读2k次。最近用Qt软件界面,需要用到mouseMoveEvent,研究了下,发现些问题,分享一下。在Qt中要捕捉鼠标移动事件需要重写MouseMoveEvent,但是MouseMoveEvent为了不太耗资源在默认状态下是要鼠标按下才能捕捉到。要想鼠标不按下时的移动也能捕捉到,需要setMouseTracking(true)。boolmouseTracking这个属性..._qt mousemoveevent只能在鼠标按下时才反应

QML MouseArea元素_qml 矩形边框鼠标-程序员宅基地

文章浏览阅读159次。QML MouseArea元素_qml 矩形边框鼠标

NOI 4.5 动态规划 1665:完美覆盖_棋盘上相邻的两个方格,即一张多米诺牌是一张 1 行 2 列或者 2 行 1 列的牌。那么,-程序员宅基地

文章浏览阅读589次。题目来源:http://noi.openjudge.cn/ch0405/1665/1665:完美覆盖总时间限制: 1000ms 内存限制: 65536kB描述一张普通的国际象棋棋盘,它被分成 8 乘 8 (8 行 8 列) 的 64 个方格。设有形状一样的多米诺牌,每张牌恰好覆盖棋盘上相邻的两个方格,即一张多米诺牌是一张 1 行 2 列或者 2 行 1 列的牌。那么,是否能够把 32 张多米..._棋盘上相邻的两个方格,即一张多米诺牌是一张 1 行 2 列或者 2 行 1 列的牌。那么,

如何设置JPanel大小_jpanle调大小-程序员宅基地

文章浏览阅读4.3w次,点赞30次,收藏41次。转自:http://lookbing.iteye.com/blog/518139_jpanle调大小

关于Linux下root密码的问题-程序员宅基地

文章浏览阅读95次。 这几天看到一个同学进不去他的Linux下的root权限,su root的时候让他敲root的密码他自己都不知道。貌似这个密码是当时装Linux的时候设的,如果自己当时不设一下的话,系统就会自动给随机一个密码给你。据说是为了安全性。那他怎么获得他的root权限呢?sudo固然可以短暂获得,但那终究是扬汤止沸。下面介绍一下做法。sudo passwd root 然后输入自己的密码,...

随便推点

es6中文手册_javascript 中文手册 es6 chm-程序员宅基地

文章浏览阅读2w次,点赞6次,收藏30次。这是一个 ES2015(ES6) 的Cheatsheet,其中包括提示、小技巧、最佳实践和一些代码片段,帮助你 完成日复一日的开发工作。Table of Contentsvar 与 let / const 声明代码执行块替换立即执行函数箭头函数字符串解构模块参数类SymbolsMapsWeakMapsPromisesGeneratorsAsync Await mor_javascript 中文手册 es6 chm

Hive 开窗函数_窗口函数取到分组后的第二条-程序员宅基地

文章浏览阅读318次。开窗函数普通的聚合函数聚合的行集是组,开窗函数聚合的行集是窗口。因此,普通的聚合函数每组(Group by)只返回一个值,而开窗函数则可为窗口中的每行都返回一个值。简单理解,就是对查询的结果多出一列,这一列可以是聚合值,也可以是排序值。开窗函数一般分为两类,聚合开窗函数和排序开窗函数。12测试数据– 建表create table student_scores(id int,studentId int,language int,math int,english int,classId_窗口函数取到分组后的第二条

Java与Oracle 数据类型对应关系_oracle数据类型和java的对应关系-程序员宅基地

文章浏览阅读2.2k次。SQL数据类型JDBC类型代码标准的Java类型Oracle扩展的Java类型 1.0标准的JDBC类型: CHARjava.sql.Types.CHARjava.lang.Stringoracle.sql.CHARVARCHAR2j_oracle数据类型和java的对应关系

ubuntu docker-compose安装[最快安装方法]_ubuntu 安装docker-compose慢-程序员宅基地

文章浏览阅读1.9k次。1. 由于官网使用的是 curl安装方法,实在太慢,不敢恭维更新源$ sudo apt-install update安装python-pip$ sudo apt install python-pip查看版本$ sudo pip --version更新pip版本$ sudo pip install --upgrade pip安装docker-compose$_ubuntu 安装docker-compose慢

完美解决android软键盘挡住输入框方法,还不顶标题栏_android editview输入框顶不上去-程序员宅基地

文章浏览阅读4.8k次,点赞4次,收藏6次。非透明状态栏下使用adjustResize和adjustPan,或是透明状态栏下使用fitsSystemWindows=true属性_android editview输入框顶不上去

Mac os 配置JDK,SDK环境变量_mac java sdk8-程序员宅基地

文章浏览阅读6.2k次。一、下载安装JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html二、安装完成启动终端查找jdk版本开一个终端,输入java -version,将会显示出jdk版本_mac java sdk8