相关疑难解决方法(0)

java中的字符串8内存较少

我得到了以下代码,我被问到哪个选项获得以下模式:

XXXX-XXXX-XXXX-2324

...

代码如下:

public class CCMark {

    public static String maskCC(String creditCard){

        String x = "XXXX-XXXX-XXXX-";
        //line 1
    }

    public static void main(String[] args) {
        System.out.println(maskCC("1234-5678-1234-2324"));
        System.out.println(maskCC("4567-5678-1234-5643"));
        System.out.println(maskCC("1234-5678-1234-4654"));
        System.out.println(maskCC("4567-5678-1234-5435"));
    }

}
Run Code Online (Sandbox Code Playgroud)

下面可以插入"第1行"的可能选项:

    A) 
    return x + creditCard.substring(15, 19);

    B) 
    StringBuilder sb = new StringBuilder(x);
    sb.append(creditCard, 15, 19);
    return sb.toString();
Run Code Online (Sandbox Code Playgroud)

我认为这里最好的选择,因为A和B为我们提供了相同的输出,是B,因为它使用的是StringBuilder,这意味着它的方法是可变的,因此它将使用比选项A更少的内存.

我错了吗?可能是这种特殊情况的选项A是最好的选择吗?

memory string stringbuilder memory-efficient java-8

5
推荐指数
1
解决办法
496
查看次数

连接字符串和整数的目的是什么?

true如果传入的数字包含a,则此方法返回1.

public boolean hasOne(int n) {
  return (n + "").contains("1");
}
Run Code Online (Sandbox Code Playgroud)

+ ""部分的目的是 什么?如何使n一个string?(.containsStrings据我理解).

java string

-1
推荐指数
1
解决办法
220
查看次数

标签 统计

string ×2

java ×1

java-8 ×1

memory ×1

memory-efficient ×1

stringbuilder ×1