java - 有没有办法解决局部变量可能尚未初始化的问题

标签 java android

我收到错误:局部变量可能尚未在以下代码行中初始化

final StingBuilder personSearchURLOne = personSearchURLOne.append(getName.getName1(searchOne));

我无法通过使用 Final StringBuilder personSearchURLOne = null; 进行初始化;起初,因为那样我以后将无法更改它,所以我尝试在我需要它的实例中将其初始化为最终值。它必须是最终的,因为如果不是最终的,我会收到错误:无法引用在不同方法中定义的内部类中的非最终变量。

这是我的另一个类

import android.widget.EditText;

public class getName {
static String nameOne = null;
static String nameTwo = null;

static StringBuilder personURLOne = new StringBuilder();
static StringBuilder personURLTwo = new StringBuilder();

public static String personURL = "http://api.themoviedb.org/3/search/person?api_key=bb0b6d66c2899aefb4d0863b0d37dc4e&query=";

public static StringBuilder getName1(EditText searchOne){
    nameOne = searchOne.getText().toString();


    nameOne = nameOne.replace(" ", "_");


    personURLOne.append(personURL); 
    personURLOne = personURLOne.append(nameOne);



    return personURLOne;

}

public static StringBuilder getName2(EditText searchTwo){
    nameTwo = searchTwo.getText().toString();
    nameTwo = nameTwo.replace(" ", "_");

    personURLTwo.append(personURL);
    personURLTwo = personURLTwo.append(nameTwo);

    return personURLTwo;
}


}

最佳答案

final StingBuilder personSearchURLOne = new StringBuilder(getName.getName1(searchOne));

关于java - 有没有办法解决局部变量可能尚未初始化的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12394962/

相关文章:

java - 将 Logback 跟踪日志发送到 Azure 应用程序洞察 - 错误 : failed to send, 错误请求

android - onPause() 在调用 mediaplayer.isPlaying() 时崩溃

android - Phonegap/Cordova::以编程方式拍照

java - Android:关于打开 Activity 和按钮的说明

java - 将新数组分配给现有数组的正确方法

java - 如何检查哪些线程或对象仍在使用或未使用?

java - 获取我的项目文件夹的路径

java - 即使我有一个以 Object 作为参数的公共(public)构造函数,构造函数反射也不接受 Map 或 List 参数

android - SQLite Left Outer Join 在 Android 中无法正常工作

android - 无法应用插件 : 'dexguard' at build. gradle 文件