繁体   English   中英

如何在Java中的main内部使用静态变量

[英]How to use static variable inside main in Java

原谅我,我是Java的初学者。 在分配作业时,我必须创建一个程序,该程序使用for循环打印温度从32到98的表格,并转换为摄氏度和开尔文。 我不断收到错误消息“无法从静态上下文中引用非静态变量x”。 事实是,我将x固定为DecimalFormat作为x.format,然后尝试将其应用于转换到小数点后两位。 它会将x识别为变量而不是函数名称。 这是我的代码:

public static void main(String args[]){

    int i;

    for(i = 32; i <= 98; i++){

        System.out.println((i)+"F"+(x.format(i-32)*(5/9))+"C"+(x.format(i-32)*(5/9)+273.15))+"K");
    }


    }
}

在您的类中,您有一个非静态的成员变量x 当在静态的主类中使用它时,会引发异常。

第一种方式:

因此,您需要做的就是将x的修饰符更改为static,如下所示:

static x; // with your modifiers

那么您可以在主要方法中使用它而不会遇到麻烦。

第二种方式:

如果这是一个相对较大的项目(或中等规模),则可能要考虑使用另一个函数并从主循环调用该函数,以避免必须处理所有这些静态内容。 方法如下:

public static void main(String[] args){
    YOUR_CLASS_NAME c = new YOUR_CLASS_NAME();
    c.startLogic();
}
public void startLogic(){
    System.out.println((i)+"F"+(x.format(i-32)*(5/9))+"C"+(x.format(i-32)*(5/9)+273.15))+"K");
}

请记住,将YOUR_CLASS_NAME更改为您的班级名称(duh)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM