如何使用此变量?

时间:2019-05-29 03:25:37

标签: java

我想在主类中使用此变量(ntime []) 我认为我必须使用“扩展”,但我不知道该如何使用。 我可以使用什么变量,如何使用它? 我想知道它正在使用扩展,也可以使用另一个变量。 谢谢

我正在使用扩展 ~~ void main(String args [])扩展 *引发IOException 和 ~~ void main扩展* (字符串args [])***引发IOException

但这不起作用

导入java.util.Calendar;

class *****
 {
 public void ***** throws IOException
 {
 int [] ntime = new int [6];
 BufferedReader inbr = new BufferedReader (new
 InputStreamReader(System.in));
 Calendar now= Calendar.getInstance();
 ntime[0] = now.get(Calendar.YEAR);
 ntime[1] = now.get(Calendar.MONTH);
....
 ntime[5] = now.get(Calendar.SECOND);
 }
 }


 class *****  {
 public static void main(String args[]) throws IOException
 {

***** objecta = new ***();
   objecta.test01();
  System.out.println("Time is  " + ntime[0] + ... + ntime[5]);
 }
 }

符号:变量ntime   位置:class ***

2 个答案:

答案 0 :(得分:0)

问题在于main无权访问int数组。

您可以通过从函数中返回int []来解决此问题

class Thing {
    public int[] fun() {
        Calendar now = Calendar.getInstance();
        return new int[]{
                now.get(Calendar.YEAR),
                now.get(Calendar.MONTH),
                now.get(Calendar.DAY_OF_MONTH)
        };
    }
}

然后在main中,您可以拥有

class Scratch {
    public static void main(String[] args) {
        Thing thing = new Thing();
        int[] ntime = thing.fun();

        System.out.println("time is " + ntime[0]);
    }
}

这应该可以解决您的问题。

答案 1 :(得分:0)

由于ntime是***类的成员。

要访问它,您必须首先创建该类的实例,并确保ntime不是私有成员。我认为您在创建“ objecta”时做了什么。然后,您将必须通过该对象访问变量ntime。

例如,您将致电

var dt = dt.AsEnumerable().GroupBy(x => x.Field<dynamic>(id)).Select(x => new {
 id = x.key,
 date = x.Field<dynamic>("date"),
 total_room_sold = x.Field<dynami>(total_room_sold),
 Segment = x.Select(s => new {
 segment_name = s.Field<dynamic>("segment_name"),
 room_sold = s.Field<dynamic>("room_sold"),
 })

})