以下是代码:
import java.util.Scanner;
public class MoviePrices {
public static void main(String[] args) {
Scanner user = new Scanner(System.in);
double adult = 10.50;
double child = 7.50;
System.out.println("How many adult tickets?");
int fnum = user.nextInt();
double aprice = fnum * adult;
System.out.println("The cost of your movie tickets before is ", aprice);
}
}
我对编码非常陌生,这是我的学校项目。我试图在该字符串中打印变量aprice但我在标题中得到错误。
答案 0 :(得分:8)
而不是:
System.out.println("The cost of your movie tickets before is ", aprice);
这样做:
System.out.println("The cost of your movie tickets before is " + aprice);
这称为“连接”。请阅读this Java trail了解详情。
修改:您还可以通过PrintStream.printf
使用格式。例如:
double aprice = 4.0 / 3.0;
System.out.printf("The cost of your movie tickets before is %f\n", aprice);
打印:
以前的电影票价是1.333333
你甚至可以这样做:
double aprice = 4.0 / 3.0;
System.out.printf("The cost of your movie tickets before is $%.2f\n", aprice);
这将打印:
以前的电影票价是1.33美元
%.2f
可以被视为“格式(%
)为数字(f
),带有2位小数(.2
)。” $
前面的%
仅用于显示,顺便说一句,除了说“放一个$ here”之外,它不是格式字符串的一部分。您可以在Formatter
javadocs。
答案 1 :(得分:4)
您正在寻找
System.out.println("The cost of your movie tickets before is " + aprice);
+
连接字符串。 ,
分隔方法参数。
答案 2 :(得分:1)
试试这个
System.out.println("The cost of your movie tickets before is " + aprice);
你也可以这样做:
System.out.printf("The cost of your movie tickets before is %f\n", aprice);
答案 3 :(得分:0)
这会有所帮助:
System.out.println("The cost of your movie tickets before is " + aprice);
原因是如果你处于昏迷状态,你会发送两个不同的参数。如果使用上面的行,则将double添加到字符串中,然后将参数作为String而不是String和double发送。
答案 4 :(得分:0)
当您使用,
代替+
,即
使用这个:
System.out.println ("x value" +x);
而不是
System.out.println ("x value", +x);