排序问题 本帖最后由 tomorrowzm 于 2011-02-12 14:06:35 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 为什么不先排序了再写hyperlink再拼字符串? 用<br>分一下,處理下后放入一個map中key value ---------------------------------abc <a href='xx.html'>abc</a>acd <a href='xx.html'>abc</a>bcd <a href='xx.html'>abc</a> 然後排序 import java.util.Map;import java.util.Set;import java.util.TreeMap;public class Test { public static void main(String[] args) { String hyperlink = "<a href='xx.html'>acd</a><br><a href='xx.html'>dbc</a><br><a href='xx.html'>bcd</a>"; String[] str = hyperlink.split("<br>"); Map<String, String> map = new TreeMap<String, String>(); for (String string : str) { map.put(string.substring(string.indexOf(">")+1, string.lastIndexOf("<")), string); } Set<String> set = map.keySet(); for (Object obj : set) { System.out.println(map.get(obj)); } }}wan 非要做的话,先用“<br/>”split开字符,再用正则表达式去获取每个a href的链接文字,将文字和链接放进TreeMap,再迭代TreeMap读取value,拼成新的hyperlink <a></a>里面的内容允许重复,不能作为Key存进Map,因为会覆盖掉上一个值。另求高手。谢谢。 参考了别处的代码,加上自己的思考,终于完成了。 public static String sortHyperlink(String hyperlink) { String thishyperlink = hyperlink; if(thishyperlink.indexOf("<br>")!=-1){ String[] text = thishyperlink.split("<br>"); String temp = ""; for (int i = 0; i < text.length; i++) { for (int j = i+1; j < text.length; j++) { String left = text[i].substring(text[i].indexOf(">") + 1, text[i].lastIndexOf("<")); String right = text[j].substring(text[j].indexOf(">") + 1, text[j].lastIndexOf("<")); if (left.compareTo(right) > 0) { temp = text[i]; text[i] = text[j]; text[j] = temp; } } } String sorted = ""; for (int i = 0; i < text.length; i++) { if(i==0){ sorted = text[i]; } else{ sorted += "<br>"+text[i]; } } return sorted; } else{ return thishyperlink; } } 大量数据的读写,优化读写速度 关于transient的困惑 今天遇到的一道题目,谁能给出最佳实现! SUN公司说的一万亿毫秒之后的日期与我的电脑不一致,大家试试DATE这个类 Java基础题 各位大侠们帮帮忙,一个棘手的问题 一个switch问题,大家看看 请问个问题:在线等待 大家帮帮忙 110 怎么用ECLIPSE运行java程序 关于 粒子系统 求教。
---------------------------------
abc <a href='xx.html'>abc</a>
acd <a href='xx.html'>abc</a>
bcd <a href='xx.html'>abc</a> 然後排序
import java.util.Set;
import java.util.TreeMap;public class Test {
public static void main(String[] args) { String hyperlink = "<a href='xx.html'>acd</a><br><a href='xx.html'>dbc</a><br><a href='xx.html'>bcd</a>"; String[] str = hyperlink.split("<br>");
Map<String, String> map = new TreeMap<String, String>();
for (String string : str) {
map.put(string.substring(string.indexOf(">")+1, string.lastIndexOf("<")), string);
}
Set<String> set = map.keySet();
for (Object obj : set) {
System.out.println(map.get(obj));
}
}
}
wan
String thishyperlink = hyperlink;
if(thishyperlink.indexOf("<br>")!=-1){
String[] text = thishyperlink.split("<br>");
String temp = "";
for (int i = 0; i < text.length; i++) {
for (int j = i+1; j < text.length; j++) {
String left = text[i].substring(text[i].indexOf(">") + 1, text[i].lastIndexOf("<"));
String right = text[j].substring(text[j].indexOf(">") + 1, text[j].lastIndexOf("<"));
if (left.compareTo(right) > 0) {
temp = text[i];
text[i] = text[j];
text[j] = temp;
}
}
}
String sorted = "";
for (int i = 0; i < text.length; i++) {
if(i==0){
sorted = text[i];
}
else{
sorted += "<br>"+text[i];
}
}
return sorted;
}
else{
return thishyperlink;
}
}