我定义了一个数组
String[] str={"afsdfs","fwfwfwf"};
.......
for(int i=2;i<=10;i++)
{
str[i]=things; //然后这里就提示Array constant can only be used in initializers
}
things是我前面定义的字符串变量
请问把数据怎么插入数组?
另外,String[] str={"afsdfs","fwfwfwf"};,那么str长度是2
for(int i=2;i<=10;i++)
这就不行了
String[] str={"afsdfs","fwfwfwf","","","","","","","","",""};
这样试试看
你的代码写在哪里了,是不是写在了函数的外面,直接写在类定义里了。
意思是Java String数组里边的元素好像初始化后就不能改变了
这样没问题
public static void main(String[] args) {
String things = "1";
String[] str = { "afsdfs", "fwfwfwf" };
for (int i = 0; i < str.length; i++) {
str[i] = things; // 然后这里就提示Array constant can only be used in
// initializers
}
}
str数组大小为2,下边应该就不能赋值了吧
我用这种办法解决了
String len=String.valueOf(users.length);
users=Arrays.copyOf(users, users.length+2);
users[users.length-2]=str1;
users[users.length-1]=str2;
我觉得不是因为数组的大小为2,
试想,如果定义一个字符串数组,
String string="hello_world";
String[] arrString=string.split("_");
for (int i = 0; i < arrString.length; i++) {
System.out.println(arrString[3]);
}
出现:
java.lang.ArrayIndexOutOfBoundsException
解决办法:
String string="hello_world_myName_is";
String[] arrString=string.split("_");
就把这四个元素添加到数组里了,如果你嫌打字麻烦,可以
这样:
String strings="HelloWorld"
String str="";
for(int i=0;i<10;i++)
{
Str+=Strings+"_";//这样最后会多一个这个元素-》“”
}
String[] arrString=Str.split("_");
可以试试使用stringbuilder,这个是可变字符串,可以随意添加字符
Array constant can only be used in initializers数组常数只能用于初始化,推荐使用StringBuffer
你这输入 赋值 就是2个,,下边还怎么往里赋值啊 用stringbuilder