Huawei Online Programming Questions Series-13-Sentence Reverse Order


Topic overview


Problem Description:

1. The question involves knowledge points.

  • String.split(key)Participle
  • reverse order

2. Solve it yourself.

  • Use string.split(" ")spaces for word segmentation.
  • Print the array in reverse.
package com.chaoxiong.niuke.huawei;

import java.util.Scanner;

/**
 * Create by tianchaoxiong on 18-4-9.
 */
public class HuaWei_13 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()){
            String key = scanner.nextLine();
            String result = reverse(key);
            System.out.println(result);
        }
    }

    private static String reverse(String key) {
        String []stringArr = key.trim().split(" ");
        //使用 stringBuilder做一个合并.
        StringBuilder stringBuilder = new StringBuilder();
        for(int i=0;i<stringArr.length;i++){
            stringBuilder.append(stringArr[stringArr.length-1-i]).append(" ");
        }
        return stringBuilder.toString().trim();
    }
}

3. Quality answers.

  • string.getByte()Convert string to byte array, each array is a word.
  • Can be (char)byteconverted to char using.
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) {
            String s = in.nextLine();  
            byte[] b = s.getBytes();//每个byte数组中存放一个词语.
            for (int i = b.length-1; i >= 0; i--) {
                System.out.print((char)b[i]);
            }
        }                      
    }
}

4. Summary of this question.

  • string.getByte()Convert string to byte array, each byte is just separated by spaces.

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325967265&siteId=291194637