代码可以编译,但不能完全运行。当DoWhile循环退出时,会弹出红色错误注释 import java.util.Scanner; 公共类自动计算器{ 静态双层牛排; 静态双肋; 静态双色拉; 静态双汉堡; 静态双软饮料; 静态双品脱啤酒; 静双酒; 静态双香槟; 静态int-i; 静态双精度[]选择=新双精度[15]; 静态双倍小计; 静态双重征税; 静态双端; 静态双总; 公共静态void main(字符串args[]){ 扫描仪扫描=新扫描仪(System.in); 肋骨=25; 牛排=35; 沙拉=5; 汉堡=15; 软饮料=2; 品脱啤酒=5; 葡萄酒=6; 香槟酒=9; 税=1.13; 做{ System.out.println(“请输入以下选项之一,或输入9进入您的账单”); 系统输出打印(“1.12盎司里脊牛排”); 系统输出打印(“2.16盎司婴儿背部肋骨”); System.out.println(“3.Ceser沙拉”); System.out.println(“4.House Burger”); System.out.println(“5.软饮料”); System.out.println(“6.Wine”); 系统输出打印(“7.香槟”); 选项[i]=scan.nextInt(); } while(选择[i]
您正在尝试访问数组索引15(因此是数组中的第16个元素),从技术上讲,它不是从0开始的索引。因此,您可以访问的最后一个索引是14。代码初始化的元素总数为15个 更改您的线路:代码可以编译,但不能完全运行。当DoWhile循环退出时,会弹出红色错误注释 import java.util.Scanner; 公共类自动计算器{ 静态双层牛排; 静态双肋; 静态双色拉; 静态双汉堡; 静态双软饮料; 静态双品脱啤酒; 静双酒; 静态双香槟; 静态int-i; 静态双精度[]选择=新双精度[15]; 静态双倍小计; 静态双重征税; 静态双端; 静态双总; 公共静态void main(字符串args[]){ 扫描仪扫描=新扫描仪(System.in); 肋骨=25; 牛排=35; 沙拉=5; 汉堡=15; 软饮料=2; 品脱啤酒=5; 葡萄酒=6; 香槟酒=9; 税=1.13; 做{ System.out.println(“请输入以下选项之一,或输入9进入您的账单”); 系统输出打印(“1.12盎司里脊牛排”); 系统输出打印(“2.16盎司婴儿背部肋骨”); System.out.println(“3.Ceser沙拉”); System.out.println(“4.House Burger”); System.out.println(“5.软饮料”); System.out.println(“6.Wine”); 系统输出打印(“7.香槟”); 选项[i]=scan.nextInt(); } while(选择[i],java,Java,您正在尝试访问数组索引15(因此是数组中的第16个元素),从技术上讲,它不是从0开始的索引。因此,您可以访问的最后一个索引是14。代码初始化的元素总数为15个 更改您的线路: 小计=选择[1]+选择[2]+选择[3]+选择[4]+选择[5]+选择[6]+选择[7]+选择[8]+选择[9]+选择[10]+选择[11]+选择[12]+选择[13]+选择[14]+选择[15]; 致: 小计=选择[0]+选择[1]+选择[2]+选择[3]+选择[4]+选择[5]+选择[6]+选择[7]+选择[8]+选
小计=选择[1]+选择[2]+选择[3]+选择[4]+选择[5]+选择[6]+选择[7]+选择[8]+选择[9]+选择[10]+选择[11]+选择[12]+选择[13]+选择[14]+选择[15];
致:
小计=选择[0]+选择[1]+选择[2]+选择[3]+选择[4]+选择[5]+选择[6]+选择[7]+选择[8]+选择[9]+选择[10]+选择[11]+选择[12]+选择[13]+选择[14];
这将使流程滚动。(尽管我承认,代码并不是通过阅读代码来完成它应该做的事情。但这是另一回事。)红色错误提示弹出-你认为如何,与我们分享?或者我们应该读心术?我要看看我的水晶球并做出预测:“红色错误”类似于“变量我可能没有初始化”。我是怎么做到的?@KevinAnderson不知道。我将代码复制到我的IDE中,没有红色的Swiggles。我试过了。当我添加这条消息时,它会拒绝发布,因为它说这不是正确的编码格式,即使我把它写进了一条评论lmaoThanks,它实际上在之后按预期工作,如此愚蠢的修复不能相信我错过了它。我在强调,因为这是一个热身代码,它不工作的lmao。
import java.util.Scanner;
public class TipCalculator{
static double Steak;
static double Ribs;
static double Salad;
static double Burger;
static double SoftDrink;
static double PintofBeer;
static double Wine;
static double Champagne;
static int i;
static double [] Choice = new double [15];
static double Subtotal;
static double Tax;
static double Tip;
static double Total;
public static void main (String args []){
Scanner scan = new Scanner (System.in);
Ribs = 25;
Steak = 35;
Salad = 5;
Burger = 15;
SoftDrink = 2;
PintofBeer = 5;
Wine = 6;
Champagne = 9;
Tax = 1.13;
do {
System.out.println("Please enter one of the following options, or enter 9 to go to your bill");
System.out.println("1. 12 oz Striploin Steak ");
System.out.println("2. 16 oz Baby Back Ribs ");
System.out.println("3. Ceaser Salad ");
System.out.println("4. House Burger ");
System.out.println("5. Soft Drink ");
System.out.println("6. Wine ");
System.out.println("7. Champagne ");
Choice [i] = scan.nextInt();
}
while (Choice [i] < 9);
if (Choice [i] == 9){
Subtotal = Choice[1] + Choice[2] + Choice[3] + Choice[4] + Choice[5] + Choice[6] + Choice[7] + Choice[8] + Choice[9] + Choice[10] + Choice[11] + Choice[12] + Choice[13] + Choice[14] + Choice[15];
System.out.println("Your subtotal is " + Subtotal);
}
System.out.println("Enter your tip percent");
Tip = scan.nextInt();
Total = ((Subtotal * Tax) * (Tip/10));
System.out.println("Your total is " + Total);
}
}