Java 将条件移动到多个方法中

Java 将条件移动到多个方法中,java,Java,我有一个非常简单的代码片段,我正试图将其转换为两种方法,但我始终无法找出我做错了什么,下面是当前的代码: if (chatLayer != null) { Page checkPage = resource.resourceResolver.getResource(url).adaptTo(Page); url = (checkPage) ? ".html" : ""; } else { PageManager manager = resource.getResourceResolv

我有一个非常简单的代码片段,我正试图将其转换为两种方法,但我始终无法找出我做错了什么,下面是当前的代码:

if (chatLayer != null) {
  Page checkPage = resource.resourceResolver.getResource(url).adaptTo(Page);
  url = (checkPage) ? ".html" : "";
} else {
  PageManager manager = resource.getResourceResolver().adaptTo(PageManager.class);
  String currentPage = manager.getContainingPage(resource).getPath();
  url = "&refer="+currentPage;
}
当我尝试将其转化为方法时:

url = chatLayer ? chatOverlay() : chatURL()

private static String chatOverlay(Page checkPage, String url) {
    Page checkPage = resource.resourceResolver.getResource(url).adaptTo(Page);
    url = (checkPage) ? ".html" : "";
}

private static String chatURL(Page checkPage, String url) {
    PageManager manager = resource.getResourceResolver().adaptTo(PageManager.class);
    String currentPage = manager.getContainingPage(resource).getPath();
    url = "&refer="+currentPage;
}

作为一个错误,我得到的只是一个当前作用域已经包含一个checkpage变量。非常感谢您的帮助。我是一个新手,因此对我的代码或代码片段的修改非常感谢。

在您的方法
chatOverlay
中,您有一个
Page checkPage
参数和一个
Page checkPage
局部变量。更改其中一个的名称。另外:你没有从你的方法中返回任何东西(不确定这是否是一个输入错误)


在方法
chatOverlay
中,有一个
Page checkPage
参数和一个
Page checkPage
局部变量。更改其中一个的名称。另外:你没有从你的方法中返回任何东西(不确定这是否是一个输入错误)

您已经有一个名为checkPage的变量作为方法参数之一。方法中不能有两个名为checkPage的变量——编译器如何知道引用的是哪个变量

您已经有一个名为checkPage的变量作为方法参数之一。方法中不能有两个名为checkPage的变量——编译器如何知道引用的是哪个变量

private static String chatOverlay(Page checkPage, String url) {
    //changed the name of the local variable
    Page checkedPage = resource.resourceResolver.getResource(url).adaptTo(Page);
    url = (checkedPage) ? ".html" : "";
    return url;
}
private static String chatOverlay(Page checkPage, String url) {
    Page checkPage = resource.resourceResolver.getResource(url).adaptTo(Page);
    url = (checkPage) ? ".html" : "";
}