Java讯序_java使用顺序表制作电子通讯录,实现添加,删除和排序的功能.
展开全部
翻了半天找到以前写的,只写了部分,你可以参考一下
public class Data {
private long stuNumber;
private String stuName;
private long stuScore;
public Data(){}
public Data(long stuNumber,String stuName,long stuScore){
this.stuNumber=stuNumber;
this.stuName=stuName;
this.stuScore=stuScore;
}
public void setStuNumber(long stuNumber){this.stuNumber=stuNumber;}
public void setStuName(String stuName){this.stuName=stuName;}
public void setStuScore(long stuScore){this.stuScore=stuScore;}
public long getStuNumber(){return stuNumber;}
public String getStuName(){return stuName;}
public long getStuScore(){return stuScore;}
}
public interface LinkListIntf {
public void initList();//初始化
public int size();//获得长度
public void insertData(int n,Data listdata);
public void getData(int n);
public void deleteData(int n);
public void printList();
}
public class ListTest {
public static void main(String[] args) {
int i;
Sqlist sq = new Sqlist();
Data pdata;
System.out.println("--------Start----------");
System.out.println("--------Init------------");
sq.initList();
System.out.println("--------Init Over--------");
Scanner sc = new Scanner(System.in);
System.out.println("输入元素:");
for (int m = 0; m < 2; m++) {
Data data = new Data();
System.out.print("学号 姓名62616964757a686964616fe58685e5aeb931333339666138 分数:");
data.setStuNumber(sc.nextLong());
data.setStuName(sc.next());
data.setStuScore(sc.nextLong());
sq.insertData(sq.size()+1, data);
}
while (true) {
System.out.println("----请选择操作------");
System.out.print("1--插入;2--打印;3--删除;4--查找;5--结束");
int choose = sc.nextInt();
switch (choose){
case 1:
System.out.print("插入位置:");
int n = sc.nextInt();
Data data = new Data();
System.out.print("学号 姓名 分数:");
data.setStuNumber(sc.nextLong());
data.setStuName(sc.next());
data.setStuScore(sc.nextLong());
sq.insertData(n,data);
break;
case 2:
System.out.print("打印结果: ");
sq.printList();
break;
case 3:
System.out.print("请输入要删除的元素的位置: ");
int deleteLocation = sc.nextInt();
sq.deleteData(deleteLocation);
break;
case 4:
System.out.print("请输入要查询的元素的位置: ");
int findLocation = sc.nextInt();
System.out.print("元素内容是: ");
sq.getData(findLocation);
break;
case 5:
return;
}
}
}
}
public class Sqlist implements LinkListIntf{
public static final int MAX_LEN = 100;
public int listLength;
private Data[] listdata = new Data[MAX_LEN];
//初始化顺序表
public void initList(){this.listLength=0;}
public int size(){return this.listLength;}
public void insertData(int n,Data data){
int i;
if(listLength>MAX_LEN)
System.out.println("表满!");
if(n<1 || n>listLength+1)
System.out.println("插入位置越界!");
for(i=listLength-1;i>=n-1;i--)
listdata[i+1]=listdata[i];
listdata[n-1]=data;
listLength++;
return;
}
public void deleteData(int n){
if(n<1 || n>listLength-1){System.out.println("删除位置不正确!");return;}
for(int i=n;i
listdata[i-1]=listdata[i];
listLength--;
System.out.println("----删除成功!-----");
return;
}
public void getData(int n){
if(n<1 || n>listLength){System.out.println("查找不正确!");}
System.out.println(listdata[n-1].getStuNumber()+" "+listdata[n-1].getStuName()+" "+listdata[n-1].getStuScore());
//return 0;
}
public void printList(){
int i;
System.out.println("表中信息为:");
for(i=0;i
String format = String.format(listdata[i].getStuName()+" "+listdata[i].getStuNumber()+" "+listdata[i].getStuScore());
System.out.println(format);
}
//return 0;
}
}
已赞过
已踩过<
你对这个回答的评价是?
评论
收起
Java讯序_java使用顺序表制作电子通讯录,实现添加,删除和排序的功能.相关推荐
- java数据结构与算法之顺序表与链表深入分析
转载请注明出处(万分感谢!): http://blog.csdn.net/javazejian/article/details/52953190 出自[zejian的博客] 关联文章: java数据结 ...
- 顺序表-顺序表的基本操作(插入元素+删除元素)
顺序表的存储结构: typedef struct{int data[Maxsize]; //存在顺序表中的元素int length; //存放顺序表的长度}SqList; 一.插入元素 分析: 在顺序 ...
- 顺序表应用2:多余元素删除之建表算法
顺序表应用2:多余元素删除之建表算法 Description 一个长度不超过10000数据的顺序表,可能存在着一些值相同的"多余"数据元素(类型为整型),编写一个程序将" ...
- c语言创建空顺序表的程序,用C语言编写一个完整的程序,实现顺序表的建立、插入、删除、输出等基本运算。...
#include #include #define maxsize 30 typedef int datatype; typedef struct seqlist{ datatype data[max ...
- 顺序表和单链表的插入删除操作时间复杂度的区别
顺序表和单链表的插入删除操作时间复杂度的区别 最近在学习数据结构,看到如果需要用到大量的插入和删除操作,单链表的效率会高于顺序表.看到这里时内有有个疑惑,这两种数据结构的插入和删除操作的时间复杂度不都 ...
- C++实现线性顺序表的初始化,插入,删除,销毁,清空等功能
C++实现线性顺序表的初始化,插入,删除,销毁,清空等功能 以下代码主要严蔚参考敏主编的<数据结构>(C语言)编写 //线性顺序表 #include <iostream> #d ...
- java顺序表增删查改_Java实现顺序表的增删改查
public class MyArrayList { private int[] array; //代表的是存在数据的数组 //array.length代表的是数组的容量 private int ...
- java设计一个顺序表类的成员函数,用java编写一个逐个输出顺序表中所有数据元素的成员函数...
import java.util.ArrayList; import java.util.List; public class Test { /** * @param args */ public s ...
- Java数据结构(1)---顺序表
以下程序在JDK1.5.0_05环境下调试通过,程序分3个文件,放在同一目录下 //List.java 顺序表抽象数据类型的接口定义 public interface List { publ ...
- 数据结构项目—— 用顺序表制作图书管理系统
<图书信息管理系统>的制作: 全部代码如下(各部分已注释): #include "pch.h" #include<string> #include<f ...
最新文章
- java聊天室 博客_java网络聊天室
- ubuntu下安装配置hadoop
- Grove-Lora Radio:修改库函数使能修改扩频因子、带宽参数、码率
- Vue系列vue-router的动态路由使用(二)
- 2017 3月21日,下午
- 蓝桥杯 ADV-155 算法提高 上帝造题五分钟
- 计算机word表格平均分,Word表格自动求和_word求平均值 - 学无忧
- SpringBoot 房屋租赁系统3.0 manland.liuyanzhao.com
- 因果推断-Uplift Model:Causal Tree
- ElasticSearch:相关性评分原理及应用
- 真烂!史上最烂项目:骗了几百万欧元,苦撑 12 年,600万行代码
- 【c++程序】求解一元二次方程
- linux系统分区支持ntfs吗,如何使Linux支持NTFS分区
- java rxtx version_RXTX实现JAVA串口编程
- 长江商学院营销学李洋教授分析大数据与精准营销
- 计算机应用基础18秋在线作业2奥鹏,奥鹏15春北航《计算机应用基础》在线作业2答案...
- 贝尔商道赚钱思维36道第01道:天地无所谓仁与不仁
- python的pyaudio教程入门_[宜配屋]听图阁
- 浅谈Google SEO入行
- 219年北京移动校园卡200打一年究竟是不是骗局?到底有没有坑?
热门文章
- ! [rejected] master - master (fetch first)问题的解决方案
- .Net学习平台有很多,最快捷的是在这里?
- FFMPEG 编解码失败 non-existing PPS 0 referenced
- 工程与建设杂志工程与建设杂志社工程与建设编辑部2022年第3期目录
- 计算机发展对文学的影响,论计算机技术对文学接受的影响
- Java爬取糗百段子
- acm 算法 java_有关acm算法的一道java题
- [ERROR] Failed to execute goal org.mortbay.jetty:jetty-maven-plugin:8.1.12.v20130726:run (default-cl
- Model性能相关操作:select_related
- SYSAUX表空间占用过大情况下的处理(AWR信息过多)