美文网首页
Java将字符串反转的7种方法

Java将字符串反转的7种方法

作者: stadol | 来源:发表于2019-07-14 18:56 被阅读0次

//方法1 递归方法

public static String reverse1(String s) {

  int length = s.length();

  if(length <= 1){

    return s;

    }

  String left = s.substring(0, length / 2);

  String right = s.substring(length / 2, length);

  return reverse1(right) + reverse1(left);

}

//方法2 通过 charAt(int index)返回char值进行字符串拼接

public static String reverse2(String s) {

  int length = s.length();

  String reverse = "";

  for(int i = 0; i < length; i++)

  reverse = s.charAt(i) + reverse;

  return reverse;

}

//方法3 把字符串转换成字符数组倒叙拼接然后返回值

public static String reverse3(String s) {

  char[] array = s.toCharArray();

  String reverse = "";

  for(int i = array.length - 1; i >= 0; i--)

  reverse += array[i];

  return reverse;

}

//方法4 调用StringBuffer中的reverse方法

public static String reverse4(String s) {

  return new StringBuffer(s).reverse().toString();

}

//方法5 把字符串转换成字符数组首位对调位置

public static String reverse5(String orig) {

  char[] s = orig.toCharArray();

  intn = s.length - 1;

  int halfLength = n / 2;

  for(int i = 0; i <= halfLength; i++) {

  chartemp = s[i];

  s[i] = s[n - i];

  s[n - i] = temp;

  }

  return new String(s);

}

//方法6

public static String reverse6(String s) {

  char[] str = s.toCharArray();

  int begin = 0;

  int end = s.length() - 1; 

  while(begin < end) {

  str[begin] = (char) (str[begin] ^ str[end]);

  str[end] = (char) (str[begin] ^ str[end]);

  str[begin] = (char) (str[end] ^ str[begin]);

  begin++;

  end--;  }

return new String(str);

}

//方法7

import java.util.Stack;

public class StringReverse {   

public static String reverse7(String s) {

  char[] str = s.toCharArray();

  Stack<Character> stack = new Stack<Character>();

  for (int i = 0; i < str.length; i++)

  stack.push(str[i]);

  String reversed = "";

  for (int i = 0; i < str.length; i++)

  reversed += stack.pop();

  return reversed;

}

}

相关文章

  • Java将字符串反转的7种方法

    //方法1 递归方法 public static String reverse1(String s) { int...

  • letcode[007] 整数反转

    题目地址:整数反转 针对反转列表,之前介绍过3种方法,Python字符串反转的3种方法。这里主要考虑将数字转化为字...

  • 2018-11-28 Java 反转字符串

    反转字符串的方法,例如将java反转成avaj。 charAt(int)z直接在String中取字符。 char[...

  • 数据结构之反转字符串

    反转字符串 题目描述:将字符串"##We###Are###Family!###"反转为"###!ylimaF###...

  • js中的几点常用知识

    1.js中的字符串反转输出 js中的字符串反转输出的N种方法: 2.js中数组转字符串和字符串转数组 javasc...

  • 几道常见的算法面试题

    字符串反转 将字符串hello, world反向输出 链表反转 ReverseList.h ReverseList...

  • 字符串练习

    练习一,去除字符串两端空格 练习二:将字符串反转思路:1,将字符串变成数组2,对数组反转3,将数组变成字符串 1,...

  • 前端常见算法题(字符串篇)

    一、反转字符串 2020.09.01 No.344 反转字符串 编写一个函数,其作用是将输入的字符串反转过来。输入...

  • JS_字符串反转

    字符串反转先将字符串转成数组,然后再将数组反转,最后将数组转成字符串输出

  • leecode刷题(11)-- 反转字符串

    leecode刷题(11)-- 反转字符串 反转字符串 描述: 编写一个函数,其作用是将输入的字符串反转过来。 示...

网友评论

      本文标题:Java将字符串反转的7种方法

      本文链接:https://www.haomeiwen.com/subject/eieikctx.html