📄 supersystem.java
字号:
import java.util.*;
import java.io.*;
public class SuperSystem
{
private String proName=null;
private int quantity=0;
private double Aprice=0.00;
private double Jprice=0.00;
private double Zprice=0.00;
private int number=0;
private String numberStr="0000";
private int n=0;
private int m=0;
Date da=new Date();
String[][] strArray=new String[100][4];
public static void main(String[] args)
{
SuperSystem ss = new SuperSystem();
boolean tag=true;
boolean tag1=true;
boolean tag2=true;
try
{
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
String strLine;
while(tag)
{
if(tag1==true)
{
System.out.println("");
System.out.println(" 欢迎使用Ayaya超市收银系统 ");
System.out.println("");
}
if(tag2==true)
{
System.out.print("购物请输入'1' 退出系统请输入'exit' : ");
strLine=br.readLine();
tag1=false;
}
else
{
System.out.print("继续请输入'5' 结帐请输入'9' 退出系统请输入'exit' : ");
strLine=br.readLine();
}
if(strLine.equals("exit"))
{
System.out.println("");
System.out.println(" 谢谢使用再见! ");
System.out.println("");
break;
}
else if(strLine.equals("9"))
{
ss.prints();
tag1=true;
tag2=true;
continue;
}else if(strLine.equals("5")||strLine.equals("1"))
{
tag2=false;
boolean tag3=true;
while(tag3)
{
//System.out.print("请输入品名: ");
String name=ss.getReadLine(1,br);
//String name=br.readLine();
if(ss.cheak(1,name))
{
// ss.setProName(name);
boolean tag4=true;
while(tag4)
{
//System.out.print("数量: ");
String quanStr=ss.getReadLine(2,br);
//String quanStr=br.readLine();
if(ss.cheak(2,quanStr))
{
//ss.setQuantity(quanStr);
//System.out.println(ss.cheak(2,quanStr));
boolean tag5=true;
while(tag5)
{
//System.out.print("单价: ");
String apriStr=ss.getReadLine(3,br);
//String apriStr=br.readLine();
if(ss.cheak(3,apriStr))
{
ss.setProName(name);
ss.setQuantity(quanStr);
ss.setAprice(apriStr);
int quan=ss.getQuantity();
double apri=ss.getAprice();
ss.setJprice(quan,apri);
ss.put(ss.getProName(),quan,apri,ss.getJprice());
tag5=false;
tag4=false;
tag3=false;
}
}
}
}
}
}
}
}
br.close();
}
catch(IOException e)
{
}
}
public SuperSystem()
{
}
public void put(String proName,int quantity,double Aprice,double Jprice)
{
for(int i=n;i<n+1;i++)
{
for(int j=0;j<4;j++)
{
if(j==0)
{
strArray[j]=proName;
}
else if(j==1)
{
strArray[j]=String.valueOf(quantity);
}
else if(j==2)
{
strArray[j]=String.valueOf(Aprice);
}
else if(j==3)
{
strArray[j]=String.valueOf(Jprice);
Zprice+=Jprice;
}
}
}
n+=1;
m+=1;
}
public void prints()
{
System.out.println("");
System.out.println(" 欢迎光临Ayaya ");
System.out.println("天天新货*流行无国界*时尚零时差");
System.out.println("三日内如有质量问题可凭小票更换!");
System.out.println("===============================");
System.out.println("收据号:0000#"+getReceiptNumber()+" 收款:03");
System.out.println("日期: "+getDataStr()+" 时间:"+getTimeStr());
System.out.println("--------------------------------");
getTitle();
for(int i=0;i<m;i++)
{
for(int j=0;j<4;j++)
{
if(j==0)
{
System.out.print(strArray[j]+" ");
strArray[j]=null;
}
else if(j==1)
{
System.out.print(strArray[j]+" ");
strArray[j]=null;
}
else if(j==2)
{
String aprec=strArray[j];
strArray[j]=null;
if(aprec.length()!=4)
{
System.out.print(aprec+"0 ");
}else
{
System.out.print(aprec+" ");
}
}
else if(j==3)
{
if(strArray[j].length()!=4)
{
System.out.print(strArray[j]+"0");
strArray[j]=null;
}else
{
System.out.print(strArray[j]);
strArray[j]=null;
}
}
}
System.out.println("");
}
System.out.println("-------------------------------");
System.out.println(" 现金 "+Zprice);
System.out.println("===============================");
System.out.println("如收银员不打小票给您或账款不符请");
System.out.println("致电2576339获88元商品地址火炬路");
System.out.println("");
System.out.println("");
System.out.println("");
System.out.println("");
System.out.println("");
m=0;
n=0;
}
public String getDataStr()
{
String DataStr=da.toLocaleString().substring(0,9);
return DataStr;
}
public String getTimeStr()
{
String TimeStr;
try
{
TimeStr=da.toLocaleString().substring(9,18);
}
catch(Exception e)
{
TimeStr=da.toLocaleString().substring(9,17);
}
return TimeStr;
}
public void getTitle()
{
String[] strTitle=new String[4];
strTitle[0]="品名";
strTitle[1]="数量";
strTitle[2]="单价";
strTitle[3]="金额";
for(int i=0;i<4;i++)
{
if(i==0)
{
System.out.print(strTitle+" ");
}
else if(i==1)
{
System.out.print(strTitle+" ");
}
else if(i==2)
{
System.out.print(strTitle+" ");
}
else if(i==3)
{
System.out.print(strTitle);
}
}
System.out.println("");
}
public String getProName()
{
return this.proName;
}
public void setProName(String proName)
{
this.proName=proName;
}
public int getQuantity()
{
return this.quantity;
}
public void setQuantity(String quantity)
{
this.quantity=Integer.parseInt(quantity);
}
public double getAprice()
{
return this.Aprice;
}
public void setAprice(String aprice)
{
this.Aprice=Double.parseDouble(aprice);
}
public double getJprice()
{
return this.Jprice;
}
public void setJprice(int quantity,double aprice)
{
this.Jprice=(quantity*aprice);
}
public boolean cheak(int int1,String str)
{
boolean che=false;
if(int1==1)
{
int n1=str.length();
if(str==null||n1<=0||n1>20)
{
System.out.println("商品名不能为空或者不能超过20个字符!");
che=false;
}
else
{
che=true;
}
}
else if(int1==2)
{
int n1=str.length();
if(str==null||n1<=0||n1>20)
{
System.out.println("商品数量不能为空或者不能超过20位数字!");
che=false;
}
else
{
try
{
int n2=Integer.parseInt(str);
che=true;
}
catch(Exception e)
{
System.out.println("您输入的商品数量不是数字,请重新输入!");
che=false;
}
}
}
else if(int1==3)
{
int n1=str.length();
if(str==null||n1<=0||n1>20)
{
System.out.println("商品单价不能为空或者不能超过20位数字!");
che=false;
}
else
{
try
{
double n2=Double.parseDouble(str);
che=true;
}
catch(Exception e)
{
System.out.println("您输入的商品单价不是货币值,请重新输入!");
che=false;
}
}
}
return che;
}
public String getReadLine(int int2,BufferedReader br)
{
String str=null;
if(int2==1)
{
System.out.print("请输入品名: ");
}
else if(int2==2)
{
System.out.print("数量: ");
}
else if(int2==3)
{
System.out.print("单价: ");
}
try
{
str=br.readLine();
}
catch(IOException e)
{}
return str;
}
public String getReceiptNumber()
{
int n1=Integer.parseInt(numberStr);
if(n1>=0 && n1<9)
{
n1+=1;
numberStr="000"+n1;
}
else if(n1>=9 && n1<99)
{
n1+=1;
numberStr="00"+n1;
}
else if(n1>=99 && n1<999)
{
n1+=1;
numberStr="0"+n1;
}
else if(n1>=999 && n1<9999)
{
n1+=1;
numberStr=String.valueOf(n1);
}
return numberStr;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -