我有一个字符串,看起来像这样:
String myString =
"1|name|lastname|email|tel" + "\n" +
"2|name|lastname|email|tel" + "\n" +
"3|name|lastname|email|tel" + "\n" +
"4|name|lastname|email|tel" + "\n";
在我的作业中,我不能使用数组或其他类 String
以及 System
.
我需要按字母顺序排列名字 compareTo
方法。
我有一个从字符串中检索名称的方法,它是:
public static String getContactName (String contact) {
StringTokenizer tokenizer = new StringTokenizer(contact, "|");
String id = tokenizer.nextToken();
String name = tokenizer.nextToken();
return name;
}
我有另一个方法,在字符串中插入联系人。在这里我必须使用 compareTo
方法。
public static String insertContactInString (String myString, String line) {
int resultat = 0;
String nomContact = "";
String nomCarnet = "";
String contact = "";
if (myString != null) {
myString += line + "\n";
do {
nomContact = getContactName(line);
nomCarnet = getContactName(myString);
resultat = nomContact.compareToIgnoreCase(nomCarnet);
if(resultat < 0) {
line = "|" + nomContact;
int pipe = line.lastIndexOf("|");
contact =contactLigne.substring(0,pipe);
line = contact;
line = "|" + nomCarnet;
pipe = line.lastIndexOf("|");
contact = line.substring(0,pipe);
line = contact;
} else {
contact = "|" + nomCarnet;
int pipe = contact.lastIndexOf("|");
contact =contact.substring(0,pipe);
contact = contact;
contactLigne = "|" + nomContact;
pipe = contactLigne.lastIndexOf("|");
contact = contactLigne.substring(0,pipe);
contactLigne = contact;
}
} while (resultat > 0);
myString += line + "\n";
System.out.println(myString);
}
return myString;
}
如果有人能帮我编写代码,我将不胜感激,因为现在每个子字符串都不是按字母顺序排列的。
我想做的是 insertContactInString
方法正在使用 getContactName
将传入参数的行参数中包含的名称与中包含的名称进行比较 myString
使用相同的 getContactName
方法。
要比较两个字符串, myString
必须不为空并且至少包含一个条目。
在那之后,我用 compareToIgnoreCase
比较两个字符串并将结果存储在 resultat
变量。
这里我使用if语句来检查 resultat
小于零。如果是这样的话, nomContact
应该在前面插入 nomCarnet
如果 resultat
大于零, nomCarnet
应该先是后是 nomContact
.
但是,我不能做的是连接 getContactName
排队的时候 myString
.
例如,如果 resultat
小于零,我要插入 myString
包含 nomContact
在包含 nomCarnet
在某种程度上 myString
最后会是这样的:
String myString =
"3|nomContact|lastname|email|tel" + "\n" +
"2|nomCarnet|lastname|email|tel" + "\n" +
"1|name|lastname|email|tel" + "\n" +
"4|name|lastname|email|tel" + "\n";
名称=英文名称
暂无答案!
目前还没有任何答案,快来回答吧!