关于 java equals() 问题????

importjava.util.ArrayList;publicclassPingPang{Stringa,b,c;publicstaticvoidmain(String... import java.util.ArrayList;
public class PingPang {
String a,b,c;
public static void main(String[] args) {
String[] op = { "x", "y", "z" };
ArrayList<PingPang> arrayList=new ArrayList<PingPang>();
for (int i = 0; i < 3; i++)
for (int j = 0; j < 3; j++)
for (int k = 0; k < 3; k++) {
PingPang a=new PingPang(op[i],op[j],op[k]);
if(!a.a.equals(a.b)&&!a.b.equals(a.c)&&!a.a.equals("x")
&&!a.c.equals("x")&&!a.c.equals("z")){
arrayList.add(a);
}
}
for(Object a:arrayList){
System.out.println(a);
}
}
public PingPang(String a, String b, String c) {
super();
this.a = a;
this.b = b;
this.c = c;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return "a的对手是"+a+","+"b的对手是"+b+","+"c的对手是"+c+"\n";
}
}
a.a.equals(a.b)&&!a.b.equals(a.c)/////这是什么意思,尽量详细点、、、
ArrayList<PingPang>///////这也不懂、、、、
展开
 我来答
dario2010
2011-04-30
知道答主
回答量:22
采纳率:0%
帮助的人:17.5万
展开全部
上面代码,a.a是指PingPang对象a中的字符串属性a,equals()函数是用于两个字符串的比较,那么a.a.equals(a.b)&&!a.b.equals(a.c)就是指PingPang对象a中的字符串a==b并且b!=c时候的条件;
ArrayList是List的子类,是个集合类,是个数组集合或叫动态数组,而ArrayList后面的<>就是指定为泛型类的,也就是说指定一个类型的集合,ArrayList<PingPang>就可以理解为有一个动态数组,而这个数组里面的所有数据类型为PingPang.
johnnysangel
2011-04-30 · TA获得超过5623个赞
知道大有可为答主
回答量:3264
采纳率:0%
帮助的人:2429万
展开全部
就是a.a等于a.b并且a.b不等于a.c
ArrayList<PingPang>就是一个里面放着PingPang类数据的ArrayList
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Yov正
2011-04-30 · 超过15用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:31.5万
展开全部
PingPang a=new PingPang(op[i],op[j],op[k]);
PingPang是一个类,a是它的对象,a这个对象里面有个叫a的String变量,a.a.equals(a.b)就是判断a对象里的a变量是否等于a对象里的b变量。
ArrayList<PingPang> arrayList=new ArrayList<PingPang>();
我不太懂,形式上像是在初始化一个对象。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嘻哈IT
2011-04-30 · TA获得超过422个赞
知道小有建树答主
回答量:125
采纳率:0%
帮助的人:59.3万
展开全部
ArrayList<PingPang> 这是一个泛型数组,意思是里面只能装 PingPang这种类型的实体Bean。

if(!a.a.equals(a.b)&&!a.b.equals(a.c)&&!a.a.equals("x")&&!a.c.equals("x")&&!a.c.equals("z"))
意思:如果a下面的a字段的数据与a下面的b字段的数据不是同一个内存地址和a下面的b字段的数据与a下面的c字段的数据不是同一个内存地址和a下面的a字段的数据与X数据不是同一个内存地址和a下面的c字段的数据与X数据不是同一个内存地址和a下面的c字段的数据与X数据不是同一个内存地址的话就执行arrayList.add(a),让数据添加a这个对象。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式