当前位置: 首页 > 面试题库 >

Java中是否有办法找到传递给函数的变量的名称?

司徒阳曜
2023-03-14
问题内容

我有一个名为testForNull的Java函数

   public static void testForNull(Object obj)
    {
     if (obj == null)
      {
        System.out.println("Object is null");
      }
    }

我用它来测试多个对象以确保它们不为空。但是,我无法以这种方式告诉变量名称。

例如。如果我说

    testForNull(x);
    testForNull(y);
    testForNull(z);

我不能说出三行中的哪一行导致了“对象为空”输出。当然,我可以简单地向函数添加另一个参数,

    testForNull(x, "x");
    testForNull(y, "y");
    testForNull(z, "z");

但是我想知道是否可以在不显式传递变量的情况下推断出变量的名称。谢谢。


问题答案:

考虑参数可能不是变量(因此没有名称):

testForNull(x != y);


 类似资料:
  • 问题内容: 在C / C++中,我经常发现在调试定义一个宏时很有用,例如,该宏可以打印出变量名及其值(即可以打印)。您可以使用“字符串化操作符的宏来得到变量名描述这里。有没有办法在Python中做到这一点? 换句话说,我想要一个功能 如果称为(或可能),它将打印出来。我意识到如果将变量及其名称都传递给函数,这样做很简单,但是我在调​​试时经常使用类似这样的函数,重复总是使我很烦。 问题答案: 并不

  • 问题内容: 如果我有 我如何在内部找出现在由表示的变量称为? 问题答案: 这是不可能的。即使是按引用传递也不会帮助您。您必须将名称作为第二个参数传递。 但是,您肯定要问的 不是 解决问题的好方法。

  • 问题内容: 很多人说评论中的要求太多,这让我犹豫不决,但是我仍然没有在他们的答案中找到解决方案,主要是因为(1)他们通常使用jQuery,而(2)问题通常包含我不理解的技术。 我有一个函数,里面有一个变量。变量被分配了一个功能。我敢肯定,这个概念不是AJAX独有的,但这是我正在使用的上下文(如果有区别的话)。 我想将变量传递给函数。但是,由于没有原始函数声明,如何指定参数?我能做到吗? 问题答案:

  • 问题内容: 是否可以获取传递给函数的变量的原始变量名?例如 以便: 返回值: 编辑: 我想要做的就是使一个函数像: ..并让函数根据传递给它的变量的名称生成文件名。 我想如果不可能的话,我只需要每次将变量和变量名作为字符串传递。 问题答案: 你不能 在传递给函数之前先对其进行评估。您所能做的就是将它作为字符串传递。

  • 问题内容: 与在或中使用的方式类似: 问题答案: 是。 如果你不理会关键字参数,这很简单并且可以工作: 如你所见,Python将为你提供一个包含所有参数的元组。 对于关键字参数,你需要将其作为单独的实际参数接受,如的所示。

  • 问题内容: 我感觉这不可能,但是我想确定已传递给javascript函数的变量的原始变量名。我不知道该如何更好地解释它,所以看看这个例子是否有意义。 这是我正在使用的jquery插件,我希望能够显示传递给“调试”函数的变量的名称。 问题答案: 没错,以任何理智的方式这都是不可能的,因为只有值才传递到函数中。