解决方案 »
- hibernate三表连接,插入数据。求指教
- Java Persistence with Hibernate中文版Hibernate实战第2版出版
- 使用hbm2dll,遇到问题,请高手指点下
- 会POI操作公式的高手请进,解决了给你500分
- 100分求助:求生成ppt的java组件
- 发现dom4j的一个关于xpath的问题与大家共享
- hibernate +spring + mysql5, 使用连接池,可是连接不断增加
- 开发jsp,servlet在线写代码并运行其代码,遇到的一个棘手的问题
- 望高手指点!!!,在线等!!!
- 如何在WEB上面显示实时变化数据,最好不用applet
- 求各位大神看看这是什么错?
- 请问一个问题,struts2 json 和aop cglib在异步时问题,谢谢
不熟悉set啊,以下代码功能帮我看看什么意思吗?
public static < T> Set< T> difference(Set< T> setA, Set< T> setB) {
Set< T> tmp = new TreeSet< T>(setA);
tmp.removeAll(setB);
return tmp;
} 这段代码是从http://www.java3z.com/cwbwebhome/article/article8/81417.html?id=4238 来的,这个是不是一个可以现成使用的代码啊?
String[] a = {"a", "b", "c"};
String[] b = {"c", "d"};
Set<String> sa = new HashSet<String>();
for (int i = 0; i < a.length; i++) {
sa.add(a[i]);
}
for (int j = 0; j < b.length; j++) {
sa.remove(b[j]);
}
Iterator<String> ia = sa.iterator();
while (ia.hasNext()) {
System.out.println(ia.next());
}
}
如果单纯的循环的话效率很低,
就是一个双层for循环而已。
所以一般的做法还是引入set来存储数组b。
这样的话是
Set set=new HashSet();
for(Object o:b){
set.add(o);
}
for(Object o:a){
if(set.contains(o)){
o=null;
}
}
}
Set set=new HashSet();
for(Object o:b){
set.add(o);
}
for(int i=0;i<a,length;i++){
if(set.contains(o)){
a[i]=null;
}
}
}
Set set=new HashSet();
for(Object o:b){
set.add(o);
}
for(int i=0;i<a,length;i++){
if(set.contains(o)){
a[i]=null;
}
}
} 比较初级,没看懂啊,代码这样写对吗? 但如下的代码出错
public static String removeData(String[] a,String[] b) {
Set set=new HashSet();
for(Object o:b){
set.add(o);
}
for(int i=0;i<a,length;i++){
if(set.contains(o)){
a[i]=null;
}
}
}
}
java基础还得多练啊。public static void removeData(String[] a, String[] b) {
Set set = new HashSet();
for (Object o : b) {
set.add(o);
}
for (int i = 0; i < a.length; i++) {
if (set.contains(a[i])) {
a[i] = null;
}
}
}
int index= a.length-1;//要交换的位置
int samecount = 0;//有多少相同的。
loop b[]//循环B数组
loop a[]//循环A数组
if(b[i] = a[j]){
swap(a[j],a[index]);
samecount++;
index --;
}
loop a[]//从0~(a.length-samecount)