public static void main(String []args)
和
public static void main(String args[])
有区别吗? 哪种是更规范的?
1
justyy 2017-01-11 21:50:27 +08:00
应该是第二种吧, 第一种能编译么?
|
2
102400 2017-01-11 21:52:16 +08:00
第二种
|
3
misaka19000 2017-01-11 21:55:02 +08:00 via Android
事实上没有区别,因为 Java 的数组支持 int[] a 和 int a[] 两种语法。
|
4
cnilnhf 2017-01-11 21:55:18 +08:00 via Android
第一种,第二种是 C 语言风格。
|
5
cnilnhf 2017-01-11 21:56:20 +08:00 via Android
|
6
JiaFeiX OP 主贴第一种写法是错的,应该是
public static void main(String[] args) |
7
holyghost 2017-01-11 22:06:04 +08:00
我能想到的第二种的好处是可以写在一行:
String a = "1", b = "2", c[] = blahblah; |
8
yuankui 2017-01-11 22:09:04 +08:00
String a 表示一个类型为 string 的变量 a
String[] a 表示一个类型为 String[]的变量 a String a[]是什么鬼? |
9
LaudOak 2017-01-11 22:10:43 +08:00
果断 public static void main(String... args)
|
10
xuhaoyangx 2017-01-11 22:11:32 +08:00
@yuankui 可以这么写
|
11
reeco 2017-01-11 22:12:01 +08:00 via iPhone
6 楼的才是正解
|
12
xuhaoyangx 2017-01-11 22:12:25 +08:00 1
|
13
yuankui 2017-01-11 22:19:08 +08:00
@xuhaoyangx 可是可以,那是指 javac 做的一个兼容处理.
你试试 javac 后再反编译回来,看看生成的 jad 代码是什么样的呢? |
14
xuhaoyangx 2017-01-11 22:23:59 +08:00 1
@yuankui 谁会管这个呢?
|
15
codingadog 2017-01-11 22:30:43 +08:00
一直用 string[] abc....因为 string[]代表具体类型啊。。。
|
16
yuankui 2017-01-11 22:31:59 +08:00 1
@xuhaoyangx 你工作有 2 年吗?
|
17
fortunezhang 2017-01-11 22:36:59 +08:00 via Android
我用第一种
|
18
zonghua 2017-01-11 22:38:32 +08:00
@xuhaoyangx 原来自带有随机数组啊,还有区间。。。
|
19
zscself 2017-01-11 22:39:11 +08:00 1
|
20
SoloCompany 2017-01-11 22:52:12 +08:00
|
21
Volio 2017-01-11 22:53:57 +08:00
一般都用第一种
|
22
mikicomo 2017-01-11 22:56:00 +08:00
第一种,第二种是 C 语言的习惯
|
23
aidchow 2017-01-12 00:23:17 +08:00 via Android
一般 java 里面是 String[] args ,这样符合 java 的规范告诉你是 String 类型的数组
|
24
kingcos 2017-01-12 00:30:34 +08:00 via iPhone
一般用 6 楼的。。
|
25
xuhaoyangx 2017-01-12 09:08:34 +08:00
@yuankui 只算 java 有吧。解释下,我正常写也是前置。但是接触过的项目,甚至包括股票证券系统的,两种写法(...算上就三种)经常混在一起,也有 code review ,但就是没人 care 这件事 so
|
26
xuhaoyangx 2017-01-12 09:10:07 +08:00
@yuankui 一些大厂前几年的面试题,就拿这个考过,哪个算错误[手动摊]
|
27
Arnie97 2017-01-12 13:02:26 +08:00 via Android
6 楼正解,我觉得 Java 当初设计的时候就不应该去兼容 C++写法,徒增烦恼
|
28
niweicumt 2017-01-12 13:30:48 +08:00
语法上都可以,习惯上还是推荐第一种,写的时候就提醒自己这是一个 String 类型的数组。
|
29
zcljy 2017-01-12 15:14:21 +08:00
习惯 ArrayList<String>的表示你们都是渣渣
|
30
spice630 2017-01-12 22:07:18 +08:00
上面都说错了,应该是 []args string, 没毛病,没争议。
|
31
kylefeng 2017-01-16 12:57:29 +08:00
public static void main(String... args)
手动滑稽。 |