如果在室外使用,可在内部

时间:2015-01-15 11:06:32

标签: java if-statement

我想要的是获取字符串a的第一个字符串,以及字符串b的最后一个字符。清空a应该返回" @ + lastb"空的b应该返回" firsta + @"。

例子:a ="你好",b =" hi"应该返回" hi&#34 ;; a =""和b ="嗨"返回" @ i&#34 ;;

public String lastChars(String a, String b) {
 if(a.length() > 0) {
   String firstA = a.substring(0,1);
 }
 else {
   String firstA = "@";
 }
 if(b.length() > 0) {
   String lastB = b.substring(b.length()-1);
 }
 else {
   String lastB = "@";
 }
 return firstA + lastB;
}

我得到的错误信息是变量无法解析,我猜这意味着它们从未被制作过?

1 个答案:

答案 0 :(得分:1)

您必须在条件之前声明变量,以便它们在条件之后保留在范围内。

public String lastChars(String a, String b) 
{
    String firstA = "";
    String lastB = "";
    if(a.length() > 0) {
        firstA = a.substring(0,1);
    } else {
        firstA = "@";
    }
    if(b.length() > 0) {
        lastB = b.substring(b.length()-1);
    } else {
        lastB = "@";
    }
    return firstA + lastB;
}