【问题标题】:xxx cannot be resolved as a variablexxx 无法解析为变量
【发布时间】:2021-12-21 21:34:52
【问题描述】:

我正在尝试从一个数组中的 2 个不同变量中获取 2 个不同的值并将它们相乘,然后将它们相加;但是,当我稍后尝试使用该代码时,会弹出一个错误。

我的代码:

import java.util.ArrayList;
class HW {
    public static void main(String[] args) {
      int [] uno = {3, 5};
      ArrayList<Integer> obj1 = new ArrayList<Integer>();
      int a = (uno[0]);
      int b = (uno[1]);
    }
    public static void man(String[] args) {
      ArrayList<Integer> obj2 = new ArrayList<Integer>();
      int [] dos = {7, 6};
      int a1 = (dos[0]);
      int b1 = (dos[1]);
    }    
    public static void an(String[] args) {
      int x = ((uno[0]) * b1);
      int y = (a1 * b);
      System.out.println(x + y);
    }
} 

【问题讨论】:

    标签: java arrays integer


    【解决方案1】:

    以下所有变量都有一个作用域,即方法作用域,这意味着它们只能在它们声明的方法内被访问:

    • uno:仅在 main 方法中可用
    • b1:仅在 man 方法中可用
    • a1:仅在 man 方法中可用
    • b:仅在 main 方法中可用

    为什么不将所有代码放在一个方法中?

    class HW {
      public static void main(String[] args) {
          int [] uno = {3, 5};
          int a = (uno[0]);
          int b = (uno[1]);
    
          int [] dos = {7, 6};
          int a1 = (dos[0]);
          int b1 = (dos[1]);
    
          int x = ((uno[0]) * b1);
          int y = (a1 * b);
          System.out.println(x + y);
      }
    } 
    

    【讨论】:

    • @tortyturty,这有帮助吗?如果有不清楚的地方请告诉我。
    猜你喜欢
    • 1970-01-01
    • 2012-04-14
    • 2012-02-29
    • 2020-12-07
    • 2019-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多