本周学习了关于数组元素的增,删,换。
1、数组元素的增加
package practice;
import java.util.Scanner;
public class Test4 {
public static void main(String[] args) {
int[] nums= {100,90,80,70,60,50,0,0};
int index=-1;
Scanner sc=new Scanner(System.in);
System.out.println("请输入您要增加的数字:");
int num=sc.nextInt();
for(int i=0;i<nums.length;i++) {
if(nums[i]==0) {
index=i;
break;
}
}
if(index==-1) {
System.out.println("没有空位置,新增失败!");
}else {
nums[index]=num;
System.out.println("新增成功!");
}
for(int i=0;i<nums.length;i++) {
System.out.print(nums[i]+" ");
}
}
}
2、数组元素的删除
package practice;
import java.util.Scanner;
public class Test5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] nums= {79,67,89,90,34,54,23};
Scanner sc=new Scanner(System.in);
System.out.println("请输入你要删除的数据:");
int num=sc.nextInt();
int index=-1;
for(int i=0;i<nums.length;i++) {
if(nums[i]==num) {
index=i;
break;
}
}
if(index==-1) {
System.out.println("删除失败!");
}else {
for(int i=index;i<nums.length-1;i++) {
nums[i]=nums[i+1];
}
nums[nums.length-1]=0;
System.out.println("删除成功!");
}
for(int i=0;i<nums.length;i++) {
System.out.print(nums[i]+" ");
}
}
}
3、数组元素的替换
package com.li;
import java.util.Scanner;
public class Test11 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] nums= {12,79,48,34,25,90,67};
Scanner sc=new Scanner(System.in);
System.out.println("请输入要修改的数据:");
int num1=sc.nextInt();
System.out.println("请输入要修改成的数据:");
int num2=sc.nextInt();
int index=-1;
for(int i=0;i<nums.length;i++) {
if(nums[i]==num1) {
index=i;
break;
}
}
if(index==-1) {
System.out.println("修改失败!");
}else {
nums[index]=num2;
System.out.println("修改成功!");
}
for(int i=0;i<nums.length;i++) {
System.out.print(nums[i]+" ");
}
}}
项目:图书馆管理系统
功能:
1. 新 增 图书
2. 查 看 图书
3. 删 除 图书
4. 借 出 图书
5. 归 还 图书
6. 退 出图书
功能解析:
1. 新增图书
如果图书已经存在,则新增失败;如果图书不存在,则实现新增功能
2. 查看图书
遍历打印所有的图书
3. 删除图书
如果要删除的图书不存在,则删除失败;
如果要删除的图书已借出,则删除失败;
如果图书存在,并且是可借状态,则可以删除
4. 借出图书
如果图书不存在,则借出失败;
如果图书存在,但是是已借出状态,则借出失败;
如果图书存在,并且是可借出状态,则可以借出
5. 归还图书
如果图书不存在,则归还失败。
如果图书存在,但是是可借状态,则归还失败
如果图书存在,并且是已借出状态,则可以归还
6. 退出
选择该功能后,程序退出
package com.li;
import java.util.Scanner;
class Books{
int id;
String name;
String zhuangtai;
String data;
int times;
}
public class LibraryTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
Books[] library=new Books[10000];
int a=0;
do {
System.out.println("欢迎使用迷你图书管理器");
System.out.println("---------------------");
System.out.println("1、新增图书");
System.out.println("2、查看图书");
System.out.println("3、删除图书");
System.out.println("4、借出图书");
System.out.println("5、归还图书");
System.out.println("6、退出");
System.out.println("---------------------");
System.out.println("请选择:");
Scanner sc=new Scanner(System.in);
int command=sc.nextInt();
switch(command) {
case 1:
addBooks(library,sc);
System.out.println("输出0返回:");
a=sc.nextInt();
break;
case 2:
queryBooks(library);
System.out.println("输出0返回:");
a=sc.nextInt();
break;
case 3:
deleteBooks(library,sc);
System.out.println("输出0返回:");
a=sc.nextInt();
break;
case 4:
lendBooks(library,sc);
System.out.println("输出0返回:");
a=sc.nextInt();
break;
case 5:
returnBooks(library,sc);
System.out.println("输出0返回:");
a=sc.nextInt();
break;
case 6:
System.out.println("程序退出!");
break;
}
if(command==6) {
break;
}
}while(a==0) ;
}
private static void addBooks(Books[] library,Scanner sc) {
System.out.println("--->新增图书");
System.out.println("请输入图书的名称:");
String name=sc.next();
int index=-1;
for(int i=0;i<library.length;i++) {
if(library[i]!=null) {
if(library[i].name.equals(name)) {
index=i;
System.out.println("您要添加的图书已存在!");
break;
}
}
}
if(index==-1) {
Books b=new Books();
b.name=name;
b.zhuangtai="可借";
b.times=0;
b.data=" ";
System.out.println("新增《"+name+"》成功!");
for(int i=0;i<library.length;i++) {
if(library[i]==null) {
library[i]=b;
b.id=i+1;
break;
}
}
}
}
private static void queryBooks(Books[] library) {
System.out.println("--->查看图书");
if(library[0]==null) {
System.out.println("您还没有图书");
}else {
System.out.println("序号 状态 名称 借出日期 借出次数");
for(int i=0;i<library.length;i++) {
Books b=library[i];
if(b!=null) {
System.out.println(b.id+" "+b.zhuangtai+" 《"+b.name+"》 "+b.data+" "+b.times+"次");
}else {
break;
}
}
}
}
private static void deleteBooks(Books[] library,Scanner sc) {
System.out.println("--->删除图书");
System.out.println("请输入你要删除图书的名称:");
String name=sc.next();
int index=-1;
for(int i=0;i<library.length;i++) {
if(library[i]!=null) {
if(name.equals(library[i].name)) {
index=i;
break;
}
}
}
if(index==-1) {
System.out.println("没有找到匹配信息。");
}else if("已借出".equals(library[index].zhuangtai)) {
System.out.println("《"+library[index].name+"》为借出状态,不能删除!");
}else if("可借".equals(library[index].zhuangtai)) {
for(int i=index;i<library.length-1;i++) {
library[i]=library[i+1];
if(library[i+1]!=null){
library[i+1].id--;
}
}
if(library[library.length-1]!=null) {
library[library.length-1]=null;
}
System.out.println("恭喜您,删除成功。");
}
}
private static void lendBooks(Books[] library,Scanner sc) {
System.out.println("-->借出图书");
System.out.println("请输入你要借出图书的名称:");
String name=sc.next();
int index=-1;
for(int i=0;i<library.length;i++) {
if(library[i]!=null) {
if(name.equals(library[i].name)) {
index=i;
break;
}
}
}
if(index==-1) {
System.out.println("你要借出的图书不存在!");
}else if(library[index].zhuangtai.equals("已借出")) {
System.out.println("你要借的图书已被借走!");
}else if(library[index].zhuangtai.equals("可借")){
library[index].zhuangtai="已借出";
library[index].times++;
System.out.println("请输入借出日期:");
String data=sc.next();
library[index].data=data;
System.out.println("恭喜你!《"+library[index].name+"》借出成功!");
}
}
private static void returnBooks(Books[] library,Scanner sc) {
System.out.println("-->归还图书");
System.out.println("请输入你要归还图书的名称:");
String name=sc.next();
int index=-1;
for(int i=0;i<library.length;i++) {
if(library[i]!=null) {
if(library[i].name.equals(name)) {
index=i;
break;
}
}
}
if(index==-1) {
System.out.println("该图书不存在,归还失败!");
}else if("可借".equals(library[index].zhuangtai)) {
System.out.println("该图书为可借状态,归还失败!");
}else if("已借出".equals(library[index].zhuangtai)) {
library[index].zhuangtai="可借";
library[index].data=" ";
System.out.println("《"+name+"》归还成功!");
}
}
}