これで、オプション付きのバックパックオブジェクトを作成するメソッドを持つこのJavaオブジェクトクラスがあります。私はすべてのメソッドが動作しているが、情報を表示する最終的なメソッドが正しく動作していません。入力されているパラメータを受け入れていないようです。 オブジェクトクラスとランナークラスの両方が含まれています。Javaランナークラスは変数を受け入れません
/* Variables and parameters
* Intro "Welcome to BackPackMaker, the ultimate backpack making experience. NOW LET'S MAKE SOME BACKPACKS!!"
* Color(red,indigo,yellow,green,purple,orange,black,white)
* No. of straps(1,2)
* Size (small,medium,large,gigantic)
* Pouches(1,2,3,4,5)
* Water Bottle Slot(True,False)
* Do you like Spongebob(True,False) if yes, "Hello SpongeBob, my name is PatBack!"
*
* Use or statements in the if loop to keep things simple
* The if loop consists of checking to see whether one of the variables was used.
*
* All methods must be commented
*/
import java.util.Scanner;
public class Backpack {
//Setting up the private variables
private String color; //color of the backpack
private String cchoice;
private int straps; //amount of straps(some backpacks only have one)
private int strapsans;
private String size; //how big it is
private String tsize; //how big it is
private int pouches; //how many pouches there are
private int tpouch; //how big it is
private boolean slot; //if there is a water bottle slot on the side
private boolean waterslot;
private static int cost; //The cost based off of number of pouches and straps.
public Backpack(){
color = "red"; //color of the backpack
cchoice = "red";
straps = 2; //amount of straps(some backpacks only have one)
strapsans = 2;
size = "big"; //how big it is
tsize = "big";
pouches = 2; //how many pouches there are
tpouch = 2;
slot = true; //if there is a water bottle slot on the side
waterslot = true;
cost = 100; //The cost based off of number of pouches and straps.
}
public String pickc(){
String color = "blank";
Scanner input = new Scanner(System.in);
System.out.println("Please choose a color.");
System.out.println("You can have red, blue, yellow, green, purple, or orange");
color = input.nextLine();
String cchoice = color;
if(cchoice.equals("red") || cchoice.equals("blue") || cchoice.equals("yellow") || cchoice.equals("green") || cchoice.equals("purple") || cchoice.equals("orange"))
{
return cchoice;
}
else
{
System.out.println("please enter a valid choice");
return pickc();
}
}
public String getcolor(){
return cchoice;
}
public String picks(){
String size = "blank";
Scanner input5 = new Scanner(System.in);
System.out.println("What size do you want? Available sizes are small, medium, and large");
size = input5.nextLine();
String tsize = size;
if(tsize.equals("small") || tsize.equals("medium") || tsize.equals("large")){
return tsize;
}
else
{
System.out.println("please enter a valid choice");
return picks();
}
}
public String getsize(){
return tsize;
}
public int pouchnum(){
pouches = 0;
Scanner input2 = new Scanner(System.in);
System.out.println("How many pouches do you want?");
pouches = input2.nextInt();
int tpouch = pouches;
if(tpouch == 1 || tpouch == 2 || tpouch == 3 || tpouch == 4 || tpouch == 5){
System.out.println(tpouch);
return tpouch;
}
else
{
System.out.println("Enter a valid number between 0 and 5");
return pouchnum();
}
}
public int getpouchnum(){
return tpouch;
}
public boolean slotyes(){
boolean slots = true;
Scanner input4 = new Scanner(System.in);
System.out.println("Do you want a water bottle space? Enter 1 for yes or anything else for no");
int answer = input4.nextInt();
boolean waterslot = slot;
if(answer == 1){
slot = true;
return slot;
}
else if (answer == 2){
slot = false;
return slot;
}
return false;
}
public boolean getslot(){
return waterslot;
}
public int straps(){
straps = 0;
Scanner input3 = new Scanner(System.in);
System.out.println("How many straps do you want? You can have up to 2");
straps = input3.nextInt();
int strapsans = straps;
if(strapsans == 1 || strapsans == 2){
System.out.println(straps);
return strapsans;
}
else
{
System.out.println("1 or 2 straps only");
return straps();
}
}
public int getstraps(){
return strapsans;
}
public void displayinfo(){ //Displays the various values of the backpack.
System.out.println("Your backpack is a " + tsize + ", " + cchoice + " backpack with " + tpouch + "pouch(s) and " + strapsans + "strap(s).");
}
}
import java.util.Scanner;
public class BackPackMaker {
public static void main(String[] args)
{
System.out.println("Welcome to BackPack Maker, prepare for the ultimate midterm experience");
System.out.println("NOW LET'S MAKE SOME BACKPACKS!");
Backpack B1 = new Backpack();
B1.pickc();
B1.getcolor();
B1.picks();
B1.getsize();
B1.pouchnum();
B1.getpouchnum();
B1.straps();
B1.getstraps();
System.out.println(B1.slotyes());
B1.getslot();
B1.displayinfo();
}
}
最小限の完全な例を提供する方法 –
期待される出力と現在得ているものを提供できるかどうかを[こちら](https://stackoverflow.com/help/mcve)でお読みください。 –
私の予想される出力は、入力が何かを返す何かを得ることです。 I.あなたのバックパックは青です。代わりに私はいつも得ます:あなたのバックパックは2ポーチと2ストラップの大きい、赤いバックパックです。 – TPG