您的位置:首页 > 编程语言 > Java开发

城市链表-JAVA LinkedList

2015-12-23 19:49 120 查看
import java.util.*;
class city{
String name;
float x,y;
int population;
float area;
}
public class af
{
Scanner s=new Scanner(System.in);
LinkedList<city> l= new LinkedList<city>();
int n;
public static void main(String[] args) {
af a=new af();
}
af()
{
menu();
}
void menu(){
System.out.println(
"*******************************************************************************"   +'\n'
+"1 建立城市信息表"                                                                    +'\n'
+"2.插入城市信息记录"                                                               +'\n'
+"3.查询城市信息记录"                                                               +'\n'
+"4.删除城市信息记录"                                                               +'\n'
+"5.显示城市信息表"                                                                    +'\n'
+"0.退出系统"                                                                       +'\n'
+"*******************************************************************************"
);
String ch;
for(;;){
System.out.println('\n'+"请选择0~5");
ch=s.nextLine();
switch(ch){
case "1":   input();            break;
case "2":   insert();           break;
case "3":   inquiry();          break;
case "4":   del();              break;
case "5":   display();          break;
case "0":   return;
default:System.out.println("输入错误,请重新输入");
}
}
}
void input(){
System.out.print("城市信息表中总共几个记录?请输入:");
n=s.nextInt();s.nextLine();
city p[]=new city
;
for(int i=0;i<n;i++){
System.out.println("第"+(i+1)+"个记录:");
p[i]=new city();
System.out.print("城市名称:");
p[i].name=s.nextLine();
System.out.print("城市横坐标:");
p[i].x=s.nextFloat();s.nextLine();
System.out.print("城市纵坐标:");
p[i].y=s.nextFloat();s.nextLine();
System.out.print("城市人口数量:");
p[i].population=s.nextInt();s.nextLine();
System.out.print("城市面积:");
p[i].area=s.nextFloat();s.nextLine();
l.add(p[i]);
}
}
void insert(){
city p=new city();
System.out.print("城市名称:");
p.name=s.nextLine();
System.out.print("城市横坐标:");
p.x=s.nextFloat();s.nextLine();
System.out.print("城市纵坐标:");
p.y=s.nextFloat();s.nextLine();
System.out.print("城市人口数量:");
p.population=s.nextInt();s.nextLine();
System.out.print("城市面积:");
p.area=s.nextFloat();s.nextLine();
l.add(p);
n++;
}

void inquiry(){
int i;
System.out.print("请输入你要查找的城市名称:");
String name=s.nextLine();
for(i=0;i<n;i++){
if(name.equals(l.get(i).name))break;
}
if(i!=n)
System.out.println(l.get(i).name+'\t'+l.get(i).x+'\t'+l.get(i).y+'\t'+l.get(i).population+'\t'+l.get(i).area);
else
System.out.println("未找到!");
}
void del(){
int i;
System.out.print("请输入你要删除的城市的名字:");
String name=s.nextLine();
for(i=0;i<n;i++){
if(name.equals(l.get(i).name))break;
}
if(i!=n){
l.remove(i);
n--;
}
else
System.out.println("未找到!");
}
void display(){
for(int i=0;i<n;i++)
System.out.println(
"name:"+'\t'+l.get(i).name              +'\n'
+"x:"+'\t'+l.get(i).x                   +'\n'
+"y:"+'\t'+l.get(i).y                   +'\n'
+"population:"+'\t'+l.get(i).population +'\n'
+"area:"+'\t'+l.get(i).area
);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: