Java 字符串中间部分隐藏类似银行卡号展示
最近做比特币模块,因为需要用到比特币的地址进行交易,又不想让用户看到完整的地址信息,需要将中间部分隐藏掉,类似于银行卡展示
直接上代码
private void showNumber() {
String bankCard = "21011205450511545105454812002";
int hideLength = 8;//替换位数,这里替代中间8位
int startIndex = bankCard.length()/2-hideLength/2;
String replaceSymbol = "#";//替换符号,这里用“#”为例
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i<bankCard.length();i++){
char number = bankCard.charAt(i);
if (i>=startIndex-1&&i<startIndex+hideLength){
stringBuilder.append(replaceSymbol);
}else {
stringBuilder.append(number);
}
}
editText.setText(stringBuilder.toString());
}