‘壹’ java遍历list 并删除相同值对象
用一个for循环遍历List时,不能删除其中的元素。
用Iterator操作即可。
还有 Pro类要重写一下 toString方法。这样System.out.println里才能打印出来。
import java.util.*;
public class ListTest {
public static void main(String[] args) {
List<Pro> list = new ArrayList();
Pro p1 = new Pro("1000","1000");
Pro p2 = new Pro("1001","1002");
Pro p3 = new Pro("1003","1004");
Pro p4 = new Pro("1005","1006");
list.add(p1);
list.add(p2);
list.add(p3);
list.add(p4);
for (Iterator<Pro> i = list.iterator(); i.hasNext();) {
Pro o = i.next();
if(o.getProid().equals(o.getProName())){
i.remove();
}
}
System.out.println(list);
}
}
class Pro{
private String proid;
private String proName;
public String getProid() {
return proid;
}
public void setProid(String proid) {
this.proid = proid;
}
public String getProName() {
return proName;
}
public void setProName(String proName) {
this.proName = proName;
}
public Pro(String proid, String proName) {
super();
this.proid = proid;
this.proName = proName;
}
public Pro() {
}
public String toString() {
return proid + ":" + proName;
}
}
‘贰’ java 将两个相同对象不同属性list合并
程序如下:
IList a = new ArrayList();
IList b = new ArrayList();
(a as ArrayList).AddRange(b);
拓展资料:
Java programming language具有目前大部分编程语言所共有的一些特征,被特意设计用于互联网的分布式环境。Java具有类似于C++语言的"形式和感觉",但它要比C++语言更易于使用,而且在编程时彻底采用了一种"以对象为导向"的方式。使用Java编写的应用程序,既可以在一台单独的电脑上运行,也可以被分布在一个网络的服务器端和客户端运行。另外,Java还可以被用来编写容量很小的应用程序模块或者applet,做为网页的一部分使用。applet可使网页使用者和网页之间进行交互式操作。
Java是Sun微系统公司在1995年推出的,推出之后马上给互联网的交互式应用带来了新面貌。目前,最常用的两种互联网浏览器软件中都包括一个Java虚拟机。几乎所有的操作系统中都增添了Java编译程序。
‘叁’ java澶氱嚎绋嬶纴姣忎釜绾跨▼涓璶ew钖屼竴涓绫伙纴鐢熸垚镄勫硅薄鐩稿悓锛岃繖鏄涓轰綍锛岃繖浼氶犳垚鍏变韩鍙橀噺镄勯梾棰桦惂
锲犱负浣犵殑Obj娌℃湁瀹炵幇equals鍜宧ashcode鏂规硶锛岀劧钖庡綋鍒涘缓瀵硅薄镄勬椂鍊欙纴java搴曞眰缁欑殑鏄涓濂楀浐瀹氱殑椤哄簭镄删ashcode锛屽綋浣犳槸澶氢釜绾跨▼鍒涘缓镄勬椂鍊欙纴镓浠ヤ细链夌浉钖岀殑鍑虹幇銆傚綋浣犵殑绾跨▼姹鏄1镄勬椂鍊欙纴灏变笉浼氩嚭鐜伴吨澶嶈繖涓鐜拌薄锛屽悓镙蜂綘鍙浠ヨ傚疗锛屼綘姣忔¤繍琛岀▼搴忕殑镞跺欙纴鍑犱箮閮芥槸闾e嚑涓猦ash鍊煎嚭鐜般
‘肆’ java怎么复制一个一样的对象
可以使用clone来实现,clone用于为引用类型的复制
1.使用clone方法的类必须先实现Cloneable接口,不然clone方法会直接返回CloneNotSupportedException不支持克隆的异常
2、实现Cloneable接口的类应该使用公共方法重写 Object.clone(它是受保护的)。某个对象实现了此接口就克隆它是不可能的。即使 clone 方法是反射性调用的,也无法保证它将获得成功。
3、在Java.lang.Object类中克隆方法是这么定义的:
protected Object clone()
throws CloneNotSupportedException
创建并返回此对象的一个副本。表明是一个受保护的方法,同一个包中可见。
按照惯例,返回的对象应该通过调用 super.clone 获得。
详见关于clone的API文档
‘伍’ java中如何去掉list中重复的对象
import java.util.ArrayList;
import java.util.List;
public class Ldc001{
public static void main(String[] args){
List<String> list = new ArrayList<String>();
List<String> list2 = new ArrayList<String>();
list.add("重");
list.add("复");
list.add("的");
list.add("值");
list.add("值");
list.add("值");
list.add("去");
list.add("除");
list.add("重");
list.add("复");
list.add("的");
list.add("值");
list.add("值");
list.add("值");
list.add("去");
list.add("除");
for (int i=0;i<list.size();i++){
if(!list2.contains(list.get(i))) list2.add(list.get(i));
}
System.out.println(list2);//去队重复后
}
}