常年写 JS,怎样适应 Java ?

2018-04-06 12:13:49 +08:00
 liuxin5959

写了几天 Java,发现处理个 JSON 都好麻烦,以前写 JS 完全没过这事,大家是怎样转变过来这种思维的呢?

8254 次点击
所在节点    程序员
95 条回复
congeec
2018-04-06 12:17:05 +08:00
你才写了几天
accfcx
2018-04-06 12:23:09 +08:00
从 c 到 Java
lihongjie0209
2018-04-06 12:23:37 +08:00
HashMap<String,Object> result =
new ObjectMapper().readValue(JSON_SOURCE, HashMap.class);


随便在网上找的, 哪里麻烦了
noe132
2018-04-06 12:23:41 +08:00
常年写 js,什么时候 js 能像 java 一样静态类型
murmur
2018-04-06 12:25:54 +08:00
你需要一个 idea
notreami
2018-04-06 12:28:35 +08:00
别用 js 的思维套 java,。
fastjson、jackson、gson。随便一个库,就能解决你纠结的问题。
lhx2008
2018-04-06 12:29:19 +08:00
以长比短有什么办法?
常年写 java,转到 js,怎么写多线程?大家是怎么转变思维的呢。
ray1888
2018-04-06 12:29:50 +08:00
@noe132 试一下 ts ?虽然我没用过
notreami
2018-04-06 12:31:04 +08:00
@lihongjie0209 这个有种强行答题的感觉,ObjectMapper 是哪里来的?为什么要转成 Map,而不是直接对象?
lihongjie0209
2018-04-06 12:32:38 +08:00
@notreami https://stackoverflow.com/questions/443499/convert-json-to-map 随手复制的, 具体自己看, 只是想说明这种问题根本不存在
learnshare
2018-04-06 12:33:37 +08:00
写 Node.js
xiandao7997
2018-04-06 12:34:31 +08:00
@noe132 typescript 还行~
lxy
2018-04-06 12:56:26 +08:00
是的,超麻烦,如果要将 Json 完全解析成一个对象(有明确的类型,如 String、Integer、List 之类,而不是 Object ),则需要定义一个与 Json 结构相同的 class。3 楼那种是不完全解析。我写了半年 Java 的确很憋屈,Python 就自由得多。
grantonzhuang
2018-04-06 12:57:11 +08:00
@notreami 然而 js 里面对象就是个 map。。。
param
2018-04-06 13:00:23 +08:00
是超麻烦没错。
pandago
2018-04-06 13:11:10 +08:00
多写就习惯了
honeycomb
2018-04-06 13:18:50 +08:00
@notreami 习惯可以不同,在 Java 里要做 json 反序列化第一个想到的肯定是 Jackson,gson 那些库。强类型的语言多少会有这种麻烦。
IvanLi127
2018-04-06 14:03:23 +08:00
如果不是必须要 java,那么 typescript 了解一下?
TakWolf
2018-04-06 14:11:43 +08:00
常年写 Java,求教怎样适应 JS ?对象里面有啥都不知道,点也点不出来(滑稽)


根本原因是静态语言编程思维和动态语言编程思维的差别
raphaelsoul
2018-04-06 14:12:02 +08:00
别适应了 我情况和你差不多...
一边骂 java 一边哭着写。一种被猛男操哭的感觉
最近上手 ts 感觉非常良好 js 代码一下子就安全舒服多了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/444643

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX