java - java中new String[]{}和new String[]的区别

标签 java arrays string

我对java比较陌生,我对java有疑问 那就是

String array= new String[]{};
  1. 这里的{ }有什么用?
  2. String array=new String[];String array=new String[]{}; 之间有什么区别
  3. 当我编写String array=new String[10]{};时出现错误,为什么? 帮助我,我很困惑。

最佳答案

{} 定义数组的内容,在本例中为空。它们都有一个由三个 String 组成的数组

String[] array = {"element1","element2","element3"};
String[] array = new String[] {"element1","element2","element3"};
语句表达式侧(= 的右侧)的

while [] 定义了预期数组的大小,例如这将有一个包含 10 个位置的数组来放置 Strings

String[] array = new String[10];

...但是...

String array = new String[10]{};  //The line you mentioned above

这是错误的,因为您定义了一个长度为 10 的数组 ([10]),然后定义了一个长度为 0 的数组 ({}),并尝试设置它们在一个语句中指向相同的数组引用 (array)。两者均无法设置。

另外

数组应该在语句开头定义为给定类型的数组,如String[] arrayString array =/* array value*/ 的意思是,将数组值设置为 String,而不是 String 数组。

关于java - java中new String[]{}和new String[]的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20396182/

相关文章:

javascript - 使用多维数据展平 javascript 数组

string - Angular:从路径加载 SVG 并将其字符串化

ruby - 在数据库中查找每条记录,识别并删除字符串的一部分,然后将记录重新保存到数据库

java - 值列表中无法识别的标记 '(',应为 ')'

java - java检查图像是否为200dpi

java - 查找泛型数组中的最大元素及其位置,并返回包含两者的数组

python - 将列表与不同大小的子列表组合

java - 围绕球体移动相机

java - 我在读这个堆栈跟踪吗?

javascript - 如何遍历json数组