我对Java非常陌生,我正在尝试理解为什么这段代码的Magic类的main方法的输出是"TT“。我们的教授说我们不需要理解这个方法的含义,只要回答输出就行了。
代码是这样的。
public class Magic
{
public static void main(String[] args)
{
final String MSG = "Good Restaurant Seattle";
Stock stock = new Stock("HR.S");
double price = stock.getPrice();
int cent = (int) Math.rint(price);
System.out.println(MSG.substring(cent, cent+2).toUpperCase());
}
}
我知道它从哪里获取字母,以及所有变量是如何联系在一起的,但我不明白什么是"HR.S“,以及它是如何连接到输出的。
发布于 2019-01-26 10:53:17
为了让MSG.substring(cent, cent+2).toUpperCase()
返回TT
,cent
的值必须为20。
....:....1....:....2...
Good Restaurant Seattle
^^
为了使cent
为20,price
的值必须为19.5 <= price <= 20.5
。
这意味着stock.getPrice()
返回的值介于19.5和20.5之间(包括19.5和20.5)。
由于不知道Stock
是做什么的,我们不能说它是如何计算出输入"HR.S"
应该有这样的价格的。
https://stackoverflow.com/questions/54375202
复制相似问题