如何将匿名 class 与 void return 类型的方法和没有参数的 lambda 表达式一起制作?

How to make a anonymous class with void return type method and no parameters into a lambda expression?

我有以下代码片段,我需要将其更改为 lambda 表达式(Sonarlint 将此作为问题提出)

      Runnable runnableObj = new Runnable() {
        @Override
        public void run() {
          try {
            myObj.setParameters(Id);
          } catch (Exception e) {
            LOG.info("Exception in setting parameters for user" + Id);
          }
        }
      }

我试着把它改成

       Runnable runnableObj = ()->{
          try {
            myObj.setParameters(Id);
          } catch (Exception e) {
            LOG.info("Exception in setting parameters for user" + Id);
          }

      }

我不确定这样做是否正确。 请帮忙,因为我以前没有实现过 lambda 表达式。

这是正确的实现方式。 lambda 表达式没有参数,因为 run() 方法没有,并且它包含相同的实现。