java新手,制作个人计算程序。无论如何要改变if(Block.equals(“Furnace”))以包括“炉子”的检查。我尝试将“Block”设置为小写,但它只是打破并且不计算“Furnace”或“炉子”。
Block是用户输入的文本字段(炉子或炉子),然后是Block =“Furnace”或“炉子”。我应该使用一个数组来检查它是否在数组中列出的位置,它是否执行等式?
private void CalculateCraftButtonActionPerformed(ActionEvent e)
{
double BToMake = 0;
double TotalCraft = 0;
String Block = BlockToCraft.getText();
if(Block.equals("Furnace"))
{
BToMake = Double.valueOf(QuantityCraftField.getText()).doubleValue();
double Furnace = 8;
double furnace = 8;
TotalCraft = Furnace * BToMake;
TotalCraft = furnace * BToMake;
TotalCraftField.setText(String.valueOf(TotalCraft));
}
答案 0 :(得分:3)
您需要使用Block.equalsIgnoreCase("Furnace")
答案 1 :(得分:2)
我尝试设置" Block"小写,但它只是打破,并没有 计算炉子"炉子"或"炉"。
如果您使用String
调用返回的新block.toLowerCase()
对象,它应该有效:
String block = BlockToCraft.getText();
if(block.toLowerCase().equals("furnace")) {
...
String
是不可变的,所以:
String block = "Furnace";
String newBlock = block.toLowerCase();
System.out.println(block); // displays "Furnace"
System.out.println(newBlock); // displays "furnace"
答案 2 :(得分:1)
String有一个方法 equalsIgnoreCase ,here
你可以这样做:
"furnace".equalsIgnoreCase(block)
你应该看看如何在java中声明变量( block 而不是 Block )