可以说我有一个字符串,其格式是“name_surname”。我的意思是有2个动态部分,并在它们之间有一个下划线。我想分开它们,并在变量左侧部分(名称)和另一个右侧(姓氏)。在java中的字符串操作,获取第一个字符
基本上我想这样的反向:String temp=name+"_"+surname;
可以说我有一个字符串,其格式是“name_surname”。我的意思是有2个动态部分,并在它们之间有一个下划线。我想分开它们,并在变量左侧部分(名称)和另一个右侧(姓氏)。在java中的字符串操作,获取第一个字符
基本上我想这样的反向:String temp=name+"_"+surname;
使用split();
String[] parts = temp.split("_");
String name = parts[0];
String surname = parts[1]; // <-- comment
注释行会抛出一个ArrayIndexOutOfBoundsException
如果名称不包含下划线。
您应该使用拆分。
String fullName = "name_surname";
String[] components = fullName.split("_");
String firstName = components[0];
String lastName = components[1];
只需使用的StringTokenizer
StringTokenizer st = new StringTokenizer(str, "_");
while (st.hasMoreElements()) {
System.out.println(st.nextElement());
}
'StringTokenizer'现已被弃用。 – arshajii
哦,我明白了。无论如何,这对于复杂的查找并不好 –
你的意思'的lastName =组件[1]'? – arshajii