如何拆分 java 中的字符串数组值?
how to split string array values in java?
如何拆分字符串数组值,然后存储代表字符串变量?像这样 name=name
class Test{
public static void main(String[] args){
String myarray[] ={"name","age","qualification","gender"};
String name;
String gender;
String qualification,
String age;
for(int i =0;i<myarray.length;i++){
name=myarray[i];
}
}
为什么你不能做下面这样的事情?
String myarray[] = {"name", "age", "qualification", "gender"};
String name;
String gender;
String qualification;
String age;
for (String i : myarray) {
switch (i) {
case "name":
name = i;
break;
case "age":
age = i;
break;
case "qualification":
qualification = i;
break;
case "gender":
gender = i;
break;
default:
break;
}
}
这里不能使用for循环。
只需使用
name=myarray[0];
age=myarray[1];
qualification=myarray[2];
gender=myarray[3];
除非你部署一些超级复杂的反思策略,否则你将无法做到这一点,这对你的感知水平来说毫无帮助。
相反,您实际上可以做一些更简单的事情。如果你知道你总是会得到一个大小为 4 的数组并且这些位置将始终包含该数据,你可以通过它们的索引位置来引用它们。为该索引位置指定一个有意义的名称也会使您受益,这样您就不会忘记从中获得的信息。
final int NAME = 0;
final int AGE = 1;
final int QUALIFICATION = 2;
final int GENDER = 3;
// refer to them by the constants above
name = myarray[NAME];
// repeat for the others
如果您可以使用 HashMap 而不是 String,您可以这样做:
String myarray[] = {"name", "age", "qualification", "gender"};
HashMap<String, String> foo = new HashMap<String, String>();
for(String i : myarray) {
foo.put(i, i);
}
System.out.println(foo.get("name"));
System.out.println(foo.get("age"));
System.out.println(foo.get("qualification"));
System.out.println(foo.get("gender"));
这样您就不必记住数组的哪个索引包含哪些信息,而只需记住键的名称,因为您必须记住变量的名称。
如何拆分字符串数组值,然后存储代表字符串变量?像这样 name=name
class Test{
public static void main(String[] args){
String myarray[] ={"name","age","qualification","gender"};
String name;
String gender;
String qualification,
String age;
for(int i =0;i<myarray.length;i++){
name=myarray[i];
}
}
为什么你不能做下面这样的事情?
String myarray[] = {"name", "age", "qualification", "gender"};
String name;
String gender;
String qualification;
String age;
for (String i : myarray) {
switch (i) {
case "name":
name = i;
break;
case "age":
age = i;
break;
case "qualification":
qualification = i;
break;
case "gender":
gender = i;
break;
default:
break;
}
}
这里不能使用for循环。
只需使用
name=myarray[0];
age=myarray[1];
qualification=myarray[2];
gender=myarray[3];
除非你部署一些超级复杂的反思策略,否则你将无法做到这一点,这对你的感知水平来说毫无帮助。
相反,您实际上可以做一些更简单的事情。如果你知道你总是会得到一个大小为 4 的数组并且这些位置将始终包含该数据,你可以通过它们的索引位置来引用它们。为该索引位置指定一个有意义的名称也会使您受益,这样您就不会忘记从中获得的信息。
final int NAME = 0;
final int AGE = 1;
final int QUALIFICATION = 2;
final int GENDER = 3;
// refer to them by the constants above
name = myarray[NAME];
// repeat for the others
如果您可以使用 HashMap 而不是 String,您可以这样做:
String myarray[] = {"name", "age", "qualification", "gender"}; HashMap<String, String> foo = new HashMap<String, String>(); for(String i : myarray) { foo.put(i, i); } System.out.println(foo.get("name")); System.out.println(foo.get("age")); System.out.println(foo.get("qualification")); System.out.println(foo.get("gender"));
这样您就不必记住数组的哪个索引包含哪些信息,而只需记住键的名称,因为您必须记住变量的名称。