java,arraylist::怎样一组一组的存数据到arraylist,然后怎样根据其中一个值排序,还有删除某一组数据?

我想在FootballClub的class里添加数据到arraylist,但是不知道用什么代码存数据,
List<FootballClub> FC = new ArrayList<FootballClub>();
需要做的是
先存入clubname(string),score(int),goal(int) 为一组。

input输入clubname查找某一组数据并删除,根据score(int)排序,如果score相同则根据goal排序。
排序好像用到for(int i=0; i<FC.size(); i++){if(FC.get(i)>FC.get(i+1) collection.swap(i,i+1) },size是什么?怎么知道排序是根据score的?

FootballClub c = new FootballClub(club, score, goal);//这行为什么有问题?
FC.add(c);
因为这样直接存数据好像有问题,FC显示的是memory位置,并没有把input存进去。
我想知道arraylist该怎么用,最好有具体代码~

package p1;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class FootballClub implements Comparable<FootballClub>
{
private String clubname;
private int score;
private int goal;

public FootballClub ( String clubname, int score, int goal )
{
this.clubname = clubname;
this.score = score;
this.goal = goal;
}

@Override
public String toString ()
{
StringBuilder builder = new StringBuilder ();
builder.append ("FootballClub [clubname=").append (clubname).append (", score=").append (score)
.append (", goal=").append (goal).append ("]");
return builder.toString ();
}

@Override
public int compareTo ( FootballClub o )
{
if (o.score == score)
{
if (goal > o.goal)
{
return 1;
}
else if (goal < o.goal)
{
return -1;
}
else
{
return 0;
}
}
else if (o.score < score)
{
return -1;
}
else
{
return 1;
}
}

public static void main ( String[] args )
{
List<FootballClub> FC = new ArrayList<FootballClub> ();
FootballClub c1 = new FootballClub ("basketball", 100, 89);
FC.add (c1);
FootballClub c3 = new FootballClub ("basketball", 79, 99);
FC.add (c3);
FootballClub c2 = new FootballClub ("basketball", 100, 100);
FC.add (c2);
System.out.println (FC);
Collections.sort (FC);
System.out.println (FC);
}
}

追问

public String toString 有什么作用?
还有那几组数据如果用clubname, score, goal存到arraylist里而不是具体数值,
FootballClub c1 = new FootballClub (clubname, score, goal);
FC.add (c1);
这样怎么根据score排序?还有怎么通过clubname删除某一组club的信息?

追答

    编程规范规定,所有数据类必须重写toString方法,返回该类有意义的内容

    举例而已,动态的一样道理

    Collections.sort方法自己看看吧,我也是仿写而已

    删除啊,你是数据库的话要写语句的啊,如果是list里面的remove就好了啊

温馨提示:内容为网友见解,仅供参考
无其他回答

java 怎么将List里面数据排序
\/\/证明String的自然排序即ASCII码从小到大排序,最后一步。第二点,你的要求是“要按ArrayList里面的第1、2.4数据进行排序,分别怎么做啊”,这个问题的描述有问题,或者不详细,arryList2、arrayList3、arrayList4任何一个里面一共就add了3个数据,哪来第4个。如果是分别对arrayList2\\3\\4里面的数据进...

java arraylist 按照对象的属性排序
List中的元素是对象的话,若要按该List中元素的某个属性进行排序,那么应该重写里面元素的hashCode和equals方法,然后再排序。比如该问题要重写course的hashCode和equals方法

java中list里面存放map,根据map中的某两个个字段进行排序
用Collections.sort(List list, Comparator c)实现一个Comparator即可 public class MyComparator implements Comparator { public int compare(Object o1, Object o2) { Map m1=(Map)o1, m2=(Map)o2;\/\/从m1与m2取字段值然后比较,大于返回1,等于返回0,小于返回-1 } public boolean equals(Object ...

android\/java语言怎么取 ArrayList 里第一个元素的值?
首先,你可以把ArrayList当做是ArrayList来看待\\x0d\\x0a然后,利用ArrayList的get方法(ArrayList al=new ArrayList();\\x0d\\x0a String[] array=al.get(0);)得到Arraylist中的第一个String[]数据,\\x0d\\x0a最后,就是简单的在String数组中取出第一个值,即: String str=array.get(0); \\...

怎么将一个list中的内容加入另一个list中?
采用循环的方法。通过循环第一个ArrayList,然后通过每循环一次的方式,将值赋值给另一个ArrayList。具体代码实现如下:2.采用ArrayList自带的addAll()方法。addAll()方法是通过传入整一个List,将此List中的所有元素加入到新的List中,也就是当前List会增加的元素个数等于传入的List的大小。该方法较为简单...

java把一个list中的内容添加到另一个list中
采用循环的方法。通过循环第一个ArrayList,然后通过每循环一次的方式,将值赋值给另一个ArrayList。具体代码实现如下:2.采用ArrayList自带的addAll()方法。addAll()方法是通过传入整一个List,将此List中的所有元素加入到新的List中,也就是当前List会增加的元素个数等于传入的List的大小。该方法较为简单...

java中怎么不停的将输入的数存入数组(不知道长度),以回车结束。
如果你是接受控制台的输入,建议使用sanner这个类,new一个这样的类,构造方法传入system.in,这个类有一个nextint方法接受数字型输入,至于存储,可以使用list,最后在调用toarray方法转成数组

java中Arraylist是干什么的?怎么用?
ArrayList List = new ArrayList(); for( int i=0;i<10;i++ ) \/\/ 给数组增加10个Int元素 List.Add(i); \/\/..程序做一些处理 List.RemoveAt(5);\/\/ 将第6个元素移除 for( int i=0;i<3;i++ ) \/\/ 再增加3个元素 List.Add(i+20); Int32[] values = (Int32[])List.ToArray...

java怎么把一个对象存到List里?
1、可以通过list的add方法来进行添加,可以通过get方法获取到数据内容(即可是任何对象)。2、实体类型如果为数组的话,可以直接通过list的add方法进行添加转换,举例List<Object> list = new ArrayList<Object>(),定义一个数组类型的list对象String entity = new String[("1232"),创建一个要实体化的...

求java代码,需要从arraylist里取某列数,比较,计算相同的数量,然后再...
import java.util.ArrayList;import java.util.List;public class test { List<List<String[]>> all=new ArrayList<List<String[]>>();List list=new ArrayList();\/\/测试数据 String[] x={"A","xxxxx","A币","100"};String[] x1={"A","xxxxx","A币","200",};String[] x2={"B...

相似回答