Sri*_*har 53 java arrays string
我有一个selectCancel带有setter和getter方法的字符串数组,这是我表单中的一个复选框.我正在尝试获取已检查的值,并且在打印时获得上述结果.
我尝试了这个Arrays.toString()方法,但它仍然打印相同.
然后我做了以下事情:
String checked = Arrays.toString(Employee.getSelectCancel());
Run Code Online (Sandbox Code Playgroud)
我也试过Arrays.asList()和Arrays.copyOf()
那么,我该如何阅读这个字符串?
And*_*s_D 70
如果提供数组,则该方法有效.的输出
String[] helloWorld = {"Hello", "World"};
System.out.println(helloWorld);
System.out.println(Arrays.toString(helloWorld));
Run Code Online (Sandbox Code Playgroud)
是
[Ljava.lang.String;@45a877
[Hello, World]
Run Code Online (Sandbox Code Playgroud)
(之后的数字@几乎总是不同)
请告诉我们返回的类型 Employee.getSelectCancel()
小智 6
[代表一维数组
Ljava.lang.String代表字符串类(L后跟类/接口名称)
几个例子:
Class.forName("[D") -> 原始双精度数组Class.forName("[[Ljava.lang.String") -> 二维字符串数组。符号列表:
元素类型:符号
布尔值:Z
字节:B
char:C
类或接口:Lclassname
double:D
float:F
int:I
long:J
short:S
根据Java虚拟机规范(Java SE 8),JVM§4.3.2。字段描述符:
Run Code Online (Sandbox Code Playgroud)FieldType term | Type | Interpretation -------------- | --------- | -------------- L ClassName ; | reference | an instance of class ClassName [ | reference | one array dimension ... | ... | ...
该表达式[Ljava.lang.String;@45a877表示这是[类java.lang.String(Ljava.lang.String;)的数组()。并且@45a877是String对象存储在内存中的地址。