java,arraylist::怎样一组一组的存数据到arraylist,然后怎样根据其中一个值排序,还有删除某一组数据?
我想在FootballClub的class里添加数据到arraylist,但是不知道用什么代码存数据,List<FootballClub>FC=newArrayList<...
我想在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该怎么用,最好有具体代码~ 展开
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该怎么用,最好有具体代码~ 展开
1个回答
展开全部
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就好了啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询