V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ipwx  ›  全部回复第 144 页 / 共 201 页
回复总数  4003
1 ... 140  141  142  143  144  145  146  147  148  149 ... 201  
2019-07-11 17:56:45 +08:00
回复了 kuyuzhiqi 创建的主题 问与答 Java 判断空操作
@passerbytiny 所以我说了嘛,如果要超级好用的 Optional (包括解决性能问题),得要别的语言,反正不能是 Java。
2019-07-11 16:35:22 +08:00
回复了 kuyuzhiqi 创建的主题 问与答 Java 判断空操作
@kuyuzhiqi 至于 Optional<T>,可以设计为内置功能而不是打补丁打上去的类。这样的话也不会有多少效率损失,字节码层面完全可以进行编译期优化。当然这就变成另一个语言而不是 Java 了。

如果是 Java 的话,那就只能靠约定了。虽然我觉得 Optional<T> 的约定很舒服,可是也并不是所有人都认同这种用法,就没办法了。
2019-07-11 16:31:58 +08:00
回复了 kuyuzhiqi 创建的主题 问与答 Java 判断空操作
@kuyuzhiqi 不不不,引用 /指针其实没问题,但是可以设计为,不能把 null 赋予一个引用 /指针。即,一个引用 /指针的初始化必须是有东西的。如果你想表示一个可能是空的东西,就用范型叠加,比如 Optional<T>。

当然,Java 的范型是补丁打上去的,是个 shit,这是另一回事情了。
2019-07-11 16:23:33 +08:00
回复了 kuyuzhiqi 创建的主题 问与答 Java 判断空操作
@kuyuzhiqi 你这个原则是建立在 Java 作为强类型语言却有 Null,而且因为早期没有 Optional,所以大量开发人员不保证不传回 Null 这一事实基础上的。

如果随处要检查 null,会带来巨大的开销。现代 CPU 都有流水线,一个 if 条件判断会打断流水线,造成几十倍的性能损失。虽然 Java 有牛逼的 JIT,对于大部分情况下不返回 null 的接口,很多时候可以弥补这一性能损失,但是如果一开始就不需要判断 if,岂不美哉?
2019-07-11 15:47:26 +08:00
回复了 kuyuzhiqi 创建的主题 问与答 Java 判断空操作
这不是傻屌。Java 里面的 null 甚至被其发明者认为是错误的设计。

https://en.wikipedia.org/wiki/Tony_Hoare#Apologies_and_retractions

对于强类型的语言而言,Optional<T> 其实更优雅,因为语义上就会提示调用者这返回值可能是空。

https://lw900925.github.io/java/java8-optional.html
@qwerthhusn 不会有其他后果。因为 Docker 的文件系统是一层层叠起来的,每一层都是只读的。

https://medium.com/@nagarwal/docker-containers-filesystem-demystified-b6ed8112a04a
2019-07-10 15:05:50 +08:00
回复了 JasonHu 创建的主题 职场话题 后端写的接口不区分 get 跟 post 是什么感受?
全都是 POST 的话还可以接受。大不了缓存什么的自己做,说不定还比浏览器好。

全都是 GET,呵呵……
2019-07-10 11:11:00 +08:00
回复了 liangkang1436 创建的主题 程序员 中文程序员如何高效学习英文文档?
1、首先不要翻译成中文,浪费时间,还不能进一步锻炼你的英文。
2、大部分库的文档是不用记笔记的(按照我的观点),至少不用做详细的笔记。有空你可以画个脑图、做个提纲,不要做详细的笔记。
2019-07-09 23:27:10 +08:00
回复了 ladypxy 创建的主题 Python Python 正则表达式合并的问题
2019-07-09 23:24:54 +08:00
回复了 ladypxy 创建的主题 Python Python 正则表达式合并的问题
2019-07-09 16:25:13 +08:00
回复了 ladypxy 创建的主题 Python Python 正则表达式合并的问题
@ladypxy 你都拿到 dict 了想怎么办就怎么办呗。

if xxx.groupdict()['id'] is not None:
...
elif xxx.groupdict()['port'] is not None:
...
2019-07-09 10:44:51 +08:00
回复了 pythonee 创建的主题 TeX 学 LaTeX 你们觉得最难的是什么
比如清华学位论文模板用的 xelatex: https://github.com/xueruini/thuthesis

xelatex 可以用 ttf 等正常的字体。如果你系统没有装好需要的字体,下载一个放到 .tex 同级目录基本上可以解决。
2019-07-09 10:38:17 +08:00
回复了 pythonee 创建的主题 TeX 学 LaTeX 你们觉得最难的是什么
Ctex 太老了。只要你用的是比较新的发行版,比如 texlive 2018,中文字体问题,用 xelatex 就解决了,不用任何特殊处理。唯一的缺点是 xelatex 比 pdflatex 编译慢 N 倍。

LaTeX 最麻烦的是高级内容的非所见即所得编辑。敲个复杂的公式我现在还勉强,用 tikz 画个图什么的,我尝试过,放弃了。现在全面使用 Omnigraffle 画图,导出 pdf,然后 includegraphics,美滋滋。
2019-07-09 10:34:34 +08:00
回复了 ladypxy 创建的主题 Python Python 正则表达式合并的问题
用 ?: ?P 和 groupdict()

http://ideone.com/qFhwVd
2019-07-08 19:00:56 +08:00
回复了 shijingshijing 创建的主题 程序员 main 函数的 argv 参数用 char* argv[ ]还是 char** argv 合适?
@shijingshijing 首先,Java 不存在指针。C# safe 代码不存在指针。所以你的出发点就不一样。

其次,<System::String^> 不是 C++ 项目,是 .NET C++ 项目,两者截然不同。
2019-07-08 12:03:52 +08:00
回复了 shijingshijing 创建的主题 程序员 main 函数的 argv 参数用 char* argv[ ]还是 char** argv 合适?
老哥,C++ 没有 string[] argv 这种用法。

不同语言的代码风格,能参考嘛?
2019-07-08 11:20:16 +08:00
回复了 long1 创建的主题 问与答 pycharm 的一个问题
看看有没有 cmd 文件夹和 cmd.py 同时存在
2019-07-07 19:59:59 +08:00
回复了 Flowing 创建的主题 macOS Mac 上写一些文档,有什么好用的软件吗
编辑器可以用 Texpad
2019-07-07 19:59:51 +08:00
回复了 Flowing 创建的主题 macOS Mac 上写一些文档,有什么好用的软件吗
LaTeX
喜欢+1
1 ... 140  141  142  143  144  145  146  147  148  149 ... 201  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5857 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 64ms · UTC 06:14 · PVG 14:14 · LAX 22:14 · JFK 01:14
Developed with CodeLauncher
♥ Do have faith in what you're doing.