OJ 初级:句子逆序

问题描述:将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”

所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符

接口说明

/**

 * 反转句子

 *

 *@param sentence 原句子

 *@return 反转后的句子

 */

public String reverse(String sentence);

代码:

package com.huawei;

public class StringReverse {
	
	//方法一
	public static String reverse1(String sentence){
		
		String[] strArr = sentence.split(" ");
		StringBuffer sb = new StringBuffer();
		for (int i = 0; i < strArr.length; i++) {
			int len = strArr.length;
			sb.append(strArr[len-1-i]);
			if(i < strArr.length-1){
				sb.append(" ");				
			}

		}
		return sb.toString();
	}
	
	//方法二
	public static String reverse2(String sentence){
		
		String[] strArr = sentence.split(" ");
		StringBuffer sb = new StringBuffer();
		for (int i = 0; i < strArr.length; i++) {
			int len = strArr.length;
			sb.append(strArr[len-1-i]);
			sb.append(" ");	
		}
		return sb.toString().substring(0, sentence.length());
	}
	
	public static void main(String[] args){
		
		System.out.println(reverse1("I am a boy"));
		System.out.println(reverse1("I am a boy").length());
		System.out.println(reverse2("I am a boy"));
		System.out.println(reverse2("I am a boy").length());
	}

}

运行结果:

发布了42 篇原创文章 · 获赞 6 · 访问量 7505

猜你喜欢

转载自blog.csdn.net/qq_32639315/article/details/81416508
OJ