从 C#转 Java 为什么感觉 Java 的语法那么蠢

2023-07-28 12:30:16 +08:00
 Befehishaber
6068 次点击
所在节点    问与答
67 条回复
Donahue
2023-07-29 06:34:03 +08:00
学 java 的时候非常抵触,读取一个文件要用好几个类,什么 stream, bufferedxx 什么的,又臭又长
msg7086
2023-07-29 06:54:15 +08:00
C#比 Java 晚很多,自然设计上多了很多借鉴,少了很多包袱。
要看蠢不蠢,看看 C++23 跟 C++98 差别有多大就知道了。你甚至不觉得他们是同一个语言。

然后你也别说 C#。C#1.1 的时候连泛型都没有,2.0 才引入,然后大量的代码要重构到泛型,你都忘了?
msg7086
2023-07-29 06:56:25 +08:00
@Donahue 现在简单了。String content = Files.readString(fileName);
那个 bufferedreader 是 Java 1.6 的东西,已经是十几年前的事情了。
cssk
2023-07-29 07:25:57 +08:00
不蠢怎么能成工业语言
klo424
2023-07-29 08:10:32 +08:00
CSharper 路过,真的是爱不上别的语言,除了 JavaScript 。
MakHoCheung
2023-07-29 08:58:52 +08:00
学 Swift 路过,C# 也就那样,lamda 要写在括号里面也挺蠢的。现实中吐槽来来去去也就是一些语法糖和标准 API 是否简洁,挺没意思的
cylx3124
2023-07-29 09:06:01 +08:00
试试 kotlin 吧,Java 确实一言难尽
yogogo
2023-07-29 09:37:43 +08:00
算 KPI 好用多了,哈哈哈哈
niubiman
2023-07-29 11:24:45 +08:00
@MakHoCheung lambda 不就是个委托的变量吗,跟写在哪里有什么关系
poorcai
2023-07-29 12:11:49 +08:00
@Chad0000 用啥框架呀?
poorcai
2023-07-29 12:12:44 +08:00
自己写 C# 真的很爽,只能说工作很少
lovedebug
2023-07-29 12:25:05 +08:00
产品用的 JDK 17 ,功能还是不错的
Leviathann
2023-07-29 12:49:21 +08:00
你说的对,但是 不能直接 date.toString("yyyy-MM-dd")非要用 SimpleDateFormat 和语法没任何关系
levon
2023-07-29 13:01:14 +08:00
语法上确实差点,但生态好太多。
hhjswf
2023-07-29 13:18:56 +08:00
@Rocketer 无法理解你这“中国生态不好,在北美很好”是什么意思,用个库还分国内外? Java 的生态不都是靠着老外的库吗
Chad0000
2023-07-29 14:03:14 +08:00
@poorcai
xamarin 写的 APP 。工作少可以出来,直接变主流了
ShinichiYao
2023-07-29 14:19:22 +08:00
C#你可以想成 VB 用 C 的语法写出来,和 VB 可以一对一完美转换
storyxc
2023-07-29 15:49:09 +08:00
我认为 SimpleDateFormat 不如 golang 的日期格式化恶心
chocotan
2023-07-29 18:07:18 +08:00
“还有就是 list 必须要先 stream(), 必须要写 setter 和 getter(现在貌似都用插件了?) 真是难以理解。”
楼主你这没喷到点子上啊
---
不过楼主说 java 语法蠢我是赞同的。
tommyzhang
2023-07-29 18:15:20 +08:00
五十步笑百步 徒孙偶见祖宗总要怪一句祖宗不时尚

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

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

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

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

© 2021 V2EX