程序员老鬼

上午刚发offer,下午就被撤销了。。

刚看到有网友吐槽,上午刚收到offer,下午就被公司反悔撤了,真的是让人血压飙升。

Image

作为程序员,我觉得这年头找工作就像开盲盒,本以为能拿到SSR,结果还没捂热乎直接被“系统回收”了,太扎心。

网友们各种讨论,有的说现在行情不好只能自认倒霉,也有人吐槽公司没底线。怎么说呢,这种“秒撤offer”操作,在我们圈子也不是第一次见了,特别是有些互联网公司,今天招明天裁,套路多得很。说到底还是公司把风险都推给了个人,完全不考虑应聘者的时间成本和情绪,真有点过分。

从我的角度看,大家找工作一定要多留个心眼,没入职前都别太高兴太早。也别太自责,这种事不是个人能力问题,遇到了只能当成一次经验。吃一堑长一智,下一次更稳!【备注:文末可领最新资料】

算法题:首字母大写

同事小李问我怎么把一句话的每个单词首字母都变成大写,就是那种“hello world”要变成“Hello World”,他说他刷题卡住了。我一下脑子想起我之前用Java做过类似的活儿,当时还吐槽过这玩意儿咋面试老考。

其实啊,这种题真的特别生活化。你比如说咱们写个新闻APP,新闻标题都得首字母大写点好看吧,不然用户一看全小写,直接觉得是小学生产品,没格调。反正公司前端跟我吐槽过,说后端不要再给他传全小写的东西了,他懒得处理,直接让我后端搞定,省得前端又写一遍。你们懂吧,组里互相甩锅那套。

怎么用Java做?

有一次我还真踩坑了。以前我直接把字符串用split方法切开,然后再遍历每个单词,让首字母大写,其它的不变,最后拼起来。说起来简单哈,其实细节一堆。比如说有的人中间好几个空格,或者有的单词就是一个字母,你要不小心substring搞错,直接报错。

就像这样——你比如说:

publicstatic String capitalizeWords(String str){
if (str == null || str.length() == 0) return str;
    String[] words = str.split(" ");
    StringBuilder sb = new StringBuilder();
for (String word : words) {
if (word.length() > 0) {
            sb.append(Character.toUpperCase(word.charAt(0)));
if (word.length() > 1) {
                sb.append(word.substring(1));
            }
        }
        sb.append(" ");
    }
return sb.toString().trim();
}

我跟你讲,这段代码其实就够用了,绝大多数场景都能扛住,什么“a good   day”,连着好几个空格它也能hold住。但你要说啥特殊符号比如“hello-world”,那种你想每个单词都大写?那还得继续拆,得把‘-’也当成分隔符,这就开始脑补边界情况了。

用正则其实也挺香

上回我们组有个大哥直接秀操作,用了正则:

publicstatic String capitalizeWords(String str){
    Matcher m = Pattern.compile("([a-zA-Z])([a-zA-Z]*)").matcher(str);
    StringBuffer sb = new StringBuffer();
while (m.find()) {
        m.appendReplacement(sb, m.group(1).toUpperCase() + m.group(2));
    }
    m.appendTail(sb);
return sb.toString();
}

这个写法其实挺优雅的,连标点都不怕。只不过,刚学Java的同学可能一看正则,脑壳疼。这玩意儿不调试根本整不明白。

标准库有现成的吗?

反正我懒得每次都手写,有时候直接上apache的commons-lang包,里面有个WordUtils.capitalize,直接一行解决问题。不过有的公司不让引第三方包,那只能自己写了。

性能啥的用不着想

其实你要非说性能,咱们平时处理个短句子,根本感觉不出来,除非那种文本批量处理,日活千万的那种,才需要纠结效率。一般手机端处理标题,随便怎么写都行,关键还是代码别太臭。

你们自己试试上面两种写法吧,记得处理空格啥的,别一跑就报空指针,那就尴尬了。

-END-

我为大家打造了一份RPA教程,完全免费:https://www.songshuhezi.com/rpa.html

最后给大家分享一份不错的副业资料,点击下方公众号,回复关键字: 副业 领取,也可以链接我领取,微信:hls404