题解 | #字符串变形#

字符串变形

https://www.nowcoder.com/practice/c3120c1c1bc44ad986259c0cf0f0b80e

import java.util.*;
import java.util.stream.Collectors;

public class Solution {
    public String trans(String s, int n) {
        if("".equals(s.trim())){
            return s;
        }
           boolean flag = s.endsWith(" ");
        List<String> list = new ArrayList<>();
        String[] split = s.split(" ");
        for (int i = split.length - 1; i >= 0; i--) {
            list.add(split[i]);
        }

        String newString = list.stream().map(x -> change(x)).collect(
                               Collectors.joining(" "));

        return flag ? " " + newString : newString;
    }


  // ascii码转换大小写   a-z 97-122  A-Z 65 -90
    public String change(String s) {
        char[] original = s.toCharArray();
        StringBuffer stringBuffer = new StringBuffer();

        for (int i = 0; i < original.length; i++) {
            int ascii = original[i];
            if (ascii < 97) {
                original[i] = toUpCase(original[i]);
            } else {
                original[i] = toLowCase(original[i]);
            }

            stringBuffer.append(original[i]);
        }

        return stringBuffer.toString();
    }

    public char toLowCase(char c) {
        int cInt = c;
        cInt = cInt - 32;

        return (char) cInt;
    }

    public char toUpCase(char c) {
        int cInt = c;
        cInt = cInt + 32;

        return (char) cInt;
    }
}

全部评论

相关推荐

10-12 14:15
客户端其它
欢乐喵喵狗:幽默美团查看图片
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务