//运行起来总是出现Exception in thread "main" java.lang.NullPointerException,,,求解决package com.lsw.dvd2;public class DVDSET { String [] name = new String[50];
String [] date = new String[50];
int [] count= new int[50];
int [] state= new int[50];
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////package com.lsw.dvd2;import java.util.Scanner;public class DVDM { //创建dvd对象.d
DVDSET d = new DVDSET();
//初始化三个值
public void init(){
d.name[0] = "asdasd";
d.state[0]= 1;
d.count[0]= 20;
d.date [0]= "2021-12-12";
d.name[1] = "qweqwe";
d.state[1]= 0;
d.count[1]= 10;
d.name[2] = "zxczxc";
d.state[2]= 1;
d.count[2]= 15;
d.date [2]= "2021-12-12";
}
//主菜单
public void mainMenu(){
System.out.println("欢 迎 使 用 迷 你 DVD 管 理 器");
System.out.println("-------------------------------------");
System.out.println("0. 借出排行榜");
System.out.println("1. 新 增 DVD");
System.out.println("2. 查 看 DVD");
System.out.println("3. 删 除 DVD");
System.out.println("4. 借 出 DVD");
System.out.println("5. 归 还 DVD");
System.out.println("6. 退 出 ");
System.out.print("--------------------------------------\n");
System.out.print("请选择: ");
Scanner input = new Scanner(System.in);
int choice = input.nextInt();
switch(choice){
case 0:
list();
break;
case 1:
add();
break;
case 2:
serach();
break;
case 3:
delete();
break;
case 4:
borrow();
break;
case 5:
returnBook();
break;
case 6:
break;
default:
break;
}
}
//返回主菜单
public void returnMenu(){
Scanner input = new Scanner(System.in);
System.out.println("输入0返回:");
if(input.nextInt() == 0){
mainMenu();
}else{
System.out.println("输入错误,系统异常终止");
}
}
//查看
public void serach(){
System.out.println("---》》查看dvd");
System.out.println("序号**\t\t书名**\t\t状态**\t\t借出日期");
for(int i = 0; i < d.name[i].length(); i++){
if(d.name[i] == null){
break;
}else if(d.state[i] == 0){
System.out.println((i+1)+"\t\t"+d.name[i]+"\t\t"+"已经借出"+"\t\t"+d.date[i]);
}else if(d.state[i] == 1){
System.out.println((i+1)+"\t\t"+d.name[i]+"\t\t"+"可以借出"+"\t\t"+d.date[i]);
}
}
System.out.println("***********************************************");
returnMenu();
}
//新增
public void add(){
Scanner input = new Scanner(System.in);
System.out.println("请输入新增的书名:");
for(int i = 0; i < d.name[i].length(); i++){
if(d.name[i] == null){
d.name[i] = input.next();
d.state[i]= 1;
System.out.println("新增"+input.next()+"成功");
break;
}
}
System.out.println("***********************************************");
returnMenu();
}
//删除
public void delete(){
Scanner input = new Scanner(System.in);
System.out.println("请输入删除的书名:");
for(int i = 0; i < d.name[i].length(); i++){
if(d.name[i] == input.next()){
d.name[i] = null;
d.state[i]= 0;
System.out.println("删除"+input.next()+"成功");
break;
}
}
System.out.println("***********************************************");
returnMenu();
}
//借出
public void borrow(){
Scanner input = new Scanner(System.in);
System.out.println("请输入要借的书名:");
for(int i = 0; i < d.name[i].length(); i++){ if(d.name[i] == input.next()){
d.name[i] = null;
d.state[i]= 0;
System.out.println("借出"+input.next()+"成功");
break;
}
}
System.out.println("***********************************************");
returnMenu();
}
//归还
public void returnBook(){
Scanner input = new Scanner(System.in);
System.out.println("请输入要归还的书名:");
for(int i = 0; i < d.name[i].length(); i++){ if(d.name[i] == null){
d.name[i] = input.next();
d.state[i]= 0;
System.out.println("归还"+input.next()+"成功");
break;
}
}
System.out.println("***********************************************");
returnMenu();
}
//显示排行榜
public void list(){
System.out.println("---》》查看dvd");
System.out.println("序号**\t书名**\t状态**\t借出日期");
for(int i = 0; i < d.name[i].length(); i++){
System.out.println((i+1)+"\t"+d.name[i]+"\t"+d.date[i]+"\t"+d.date[i]);
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////package com.lsw.dvd2;public class TEST { public static void main(String[] args) {
DVDM dm = new DVDM();
dm.init();
dm.mainMenu();
}
}
String [] date = new String[50];
int [] count= new int[50];
int [] state= new int[50];
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////package com.lsw.dvd2;import java.util.Scanner;public class DVDM { //创建dvd对象.d
DVDSET d = new DVDSET();
//初始化三个值
public void init(){
d.name[0] = "asdasd";
d.state[0]= 1;
d.count[0]= 20;
d.date [0]= "2021-12-12";
d.name[1] = "qweqwe";
d.state[1]= 0;
d.count[1]= 10;
d.name[2] = "zxczxc";
d.state[2]= 1;
d.count[2]= 15;
d.date [2]= "2021-12-12";
}
//主菜单
public void mainMenu(){
System.out.println("欢 迎 使 用 迷 你 DVD 管 理 器");
System.out.println("-------------------------------------");
System.out.println("0. 借出排行榜");
System.out.println("1. 新 增 DVD");
System.out.println("2. 查 看 DVD");
System.out.println("3. 删 除 DVD");
System.out.println("4. 借 出 DVD");
System.out.println("5. 归 还 DVD");
System.out.println("6. 退 出 ");
System.out.print("--------------------------------------\n");
System.out.print("请选择: ");
Scanner input = new Scanner(System.in);
int choice = input.nextInt();
switch(choice){
case 0:
list();
break;
case 1:
add();
break;
case 2:
serach();
break;
case 3:
delete();
break;
case 4:
borrow();
break;
case 5:
returnBook();
break;
case 6:
break;
default:
break;
}
}
//返回主菜单
public void returnMenu(){
Scanner input = new Scanner(System.in);
System.out.println("输入0返回:");
if(input.nextInt() == 0){
mainMenu();
}else{
System.out.println("输入错误,系统异常终止");
}
}
//查看
public void serach(){
System.out.println("---》》查看dvd");
System.out.println("序号**\t\t书名**\t\t状态**\t\t借出日期");
for(int i = 0; i < d.name[i].length(); i++){
if(d.name[i] == null){
break;
}else if(d.state[i] == 0){
System.out.println((i+1)+"\t\t"+d.name[i]+"\t\t"+"已经借出"+"\t\t"+d.date[i]);
}else if(d.state[i] == 1){
System.out.println((i+1)+"\t\t"+d.name[i]+"\t\t"+"可以借出"+"\t\t"+d.date[i]);
}
}
System.out.println("***********************************************");
returnMenu();
}
//新增
public void add(){
Scanner input = new Scanner(System.in);
System.out.println("请输入新增的书名:");
for(int i = 0; i < d.name[i].length(); i++){
if(d.name[i] == null){
d.name[i] = input.next();
d.state[i]= 1;
System.out.println("新增"+input.next()+"成功");
break;
}
}
System.out.println("***********************************************");
returnMenu();
}
//删除
public void delete(){
Scanner input = new Scanner(System.in);
System.out.println("请输入删除的书名:");
for(int i = 0; i < d.name[i].length(); i++){
if(d.name[i] == input.next()){
d.name[i] = null;
d.state[i]= 0;
System.out.println("删除"+input.next()+"成功");
break;
}
}
System.out.println("***********************************************");
returnMenu();
}
//借出
public void borrow(){
Scanner input = new Scanner(System.in);
System.out.println("请输入要借的书名:");
for(int i = 0; i < d.name[i].length(); i++){ if(d.name[i] == input.next()){
d.name[i] = null;
d.state[i]= 0;
System.out.println("借出"+input.next()+"成功");
break;
}
}
System.out.println("***********************************************");
returnMenu();
}
//归还
public void returnBook(){
Scanner input = new Scanner(System.in);
System.out.println("请输入要归还的书名:");
for(int i = 0; i < d.name[i].length(); i++){ if(d.name[i] == null){
d.name[i] = input.next();
d.state[i]= 0;
System.out.println("归还"+input.next()+"成功");
break;
}
}
System.out.println("***********************************************");
returnMenu();
}
//显示排行榜
public void list(){
System.out.println("---》》查看dvd");
System.out.println("序号**\t书名**\t状态**\t借出日期");
for(int i = 0; i < d.name[i].length(); i++){
System.out.println((i+1)+"\t"+d.name[i]+"\t"+d.date[i]+"\t"+d.date[i]);
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////package com.lsw.dvd2;public class TEST { public static void main(String[] args) {
DVDM dm = new DVDM();
dm.init();
dm.mainMenu();
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货