关于#java#的问题,请各位专家解答!

为什么执行不了displayMenus方法里的后三条语句呢?求解决,谢谢啦!

img


代码如下:

package chapter4;
public class Menu {
    String names1,names2,names3,s1,s2,s3;
    float price1,price2,price3;
    public static void main(String[] args) {        
        
        String names1=new String("1.Manchurian----------");
        String names2=new String("2.Fish Fry----------");        
        String names3=new String("3.Fried Rice----------");
        
        float price[]={(float)30.0,(float)24.5,(float)19.5};
        String s1=Float.toString(price[0]);
        String s2=Float.toString(price[1]);
        String s3=Float.toString(price[2]);
        
        Menu obj=new Menu();
        obj.displayMenus();
    }
    public void displayMenus()
    {
        System.out.println("*********** Printing Menu Details ************");
        System.out.println(names1.concat(s1.concat("RMB")));
        System.out.println(names2.concat(s2.concat("RMB")));
        System.out.println(names3.concat(s3.concat("RMB")));
    }
}

要求打印如下:

img

因为重复声明

img


去掉下面的

String s1=Float.toString(price[0]);
String s2=Float.toString(price[1]);
String s3=Float.toString(price[2]);
修改成
 s1=Float.toString(price[0]);
s2=Float.toString(price[1]);
s3=Float.toString(price[2]);


因为你names1, names2, names3,是null,会抛空指针异常。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^