面试题05:Jaden Casing Strings

来源:互联网 发布:苹果mac破解软件下载 编辑:程序博客网 时间:2024/06/05 09:46

Jaden Smith, the son of Will Smith, is the star of films such as The Karate Kid (2010) and After Earth (2013). Jaden is also known for some of his philosophy that he delivers via Twitter. When writing on Twitter, he is known for almost always capitalizing every word.

Your task is to convert strings to how they would be written by Jaden Smith. The strings are actual quotes from Jaden Smith, but they are not capitalized in the same way he originally typed them.

Example:
*Not Jaden-Cased: “How can mirrors be real if our eyes aren’t real”
Jaden-Cased: “How Can Mirrors Be Real If Our Eyes Aren’t Real”
Note that the Java version expects a return value of null for an empty string or null.*

题目不难,一个转换。

public class Demo8 {    public static String toJadenCase(String phrase) {        // TODO put your code below this comment        if(phrase==null||"".equals(phrase)){            return null;        }        String[] args = phrase.split(" ");        for (int i = 0; i < args.length; i++) {            char[] array = args[i].toCharArray();            array[0] = String.valueOf(array[0]).toUpperCase().charAt(0);            args[i] = String.valueOf(array);        }        StringBuilder sb = new StringBuilder();        for(String i : args){            sb.append(i+" ");//error        }        return sb.toString().substring(0, sb.toString().length()- 1);    }    @Test    public void test(){        String returnMessage = Demo8.toJadenCase("How can mirrors be real if our eyes aren't real");        System.out.println("$"+returnMessage+"$");    }}

图中标注error的地方是一个注意的地方,每一次循环都会加上空格,但是最后一个没有空格,只需要最后把完整的字符去掉最后的空格即可。还有就是对于传入参数的验证,以保证程序的健壮性。

原创粉丝点击