我想说我有1天的java经验,因此如果它有点简单的问题,抱歉。
现在,我想展示我的代码。
我有一个字符串数组,如:
String [] attributeNames[4];
我已经从二进制文件中读取了4个名称,每个名称都是64个字节,并将它们存储到此数组中。 (属性名称包含空结束字符串最大64字节)然后我想打印我的attributeNames数组及其长度但是,如果我写:
for(int i=0;i<attributeNames2.length;i++){
System.out.println(
attributeNames2[i] +
" length: "+attributeNames2[i].length()
);
}
我只有
pathway
shortest_path
path_length
avg_neighbour_number
结果是。长度不打印,但如果我写
for(int i=0;i<attributeNames2.length;i++){
System.out.println(
"length:"+attributeNames2[i].length() +
"names:"+ attributeNames2[i]
);
}
我得到了
length: 64 pathway
length: 64 shortest_path
length: 64 path_length
length: 64 avg_neighbour_number
我想知道为什么?有人帮我吗?
答案 0 :(得分:1)
您的循环似乎没问题,问题可能在于您创建数组的方式。正确的方法是
String[] attributeNames2 = new String[4];
attributeNames2[0] = "pathway";
//and so on
或者您可以创建静态数组,在我看来这对我来说足够了
String[] array = {"pathway", "shortest_path", "and so on"};