java字符数组用法总结,java字符串数组的定义与使用

Posted 2020javamianshiti

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java字符数组用法总结,java字符串数组的定义与使用相关的知识,希望对你有一定的参考价值。

java字符数组,java数组的定义与使用,

二维数组

String[] str = new String[5]; //创建一个长度为5的String(字符串)型的一维数组
String[] str = new String[]{"","","","",""};
String[] str = {"","","","",""};

  

String数组初始化区别

       首先应该明白java数组里面存的是对象的引用,所以必须初始化才能用;  String[] str = {"1","2","3"}与String[] str = newString[]{"1","2","3"}在内存里有什么区别?  编译执行结果没有任何区别。更不可能像有些人想当然说的在栈上分配空间,Java的对象都是在堆上分配空间的。

  这里的区别仅仅是代码书写上的: 

String[] str = {"1","2","3"}; 这种形式叫数组初始化式(ArrayInitializer),只能用在声明同时赋值的情况下。
  而 String[] str = new String[]{"1","2","3"}是一般形式的赋值,=号的右边叫数组字面量(ArrayLiteral),数组字面量可以用在任何需要一个数组的地方(类型兼容的情况下)。如:
  String[] str = {"1","2","3"}; // 正确的
  String[] str = new String[]{"1","2","3"} // 也是正确的
而
  String[] str;
  str = {"1","2","3"}; // 编译错误
因为数组初始化式只能用于声明同时赋值的情况下。

改为:
  String[] str;
  str = new String[] {"1","2","3"}; // 正确了
又如:
  void f(String[] str) {
  }
  f({"1","2","3"}); // 编译错误
正确的应该是:

  f(new String[] {"1","2","3"});

还可以 String s=new String[30];

  

 

如果没有显式赋值,则系统自动赋默认值null。


PS:
  笔者所犯错误为在初始化数组的时候定义为String[] str = newString[]{},如此定义相当于创建了创建一个长度为0的String(字符串)型的一维数组。在后期为其赋值的时候str[0]="A",就会抛出异常。

java静态数组与动态数组

java数组的定义与使用

 

以上是关于java字符数组用法总结,java字符串数组的定义与使用的主要内容,如果未能解决你的问题,请参考以下文章

Java——数组的定义和使用

关于JS截取字符串以及截取数组项的几种常见方法解析

java中怎么把字符串转化为字符串数组?

Java中数组要点总结

八月份第四周学习总结

张季跃 201771010139《面向对象程序设计(java)》第三周学习总结(改)