java 保持3位 不够左面补充字符 怎么写?
发布网友
发布时间:2022-04-30 16:00
我来回答
共5个回答
热心网友
时间:2022-06-26 23:05
既然你这个只要求判断三位,因此可以这么简单写代码:
public static void main(String [] agrs){
String s = "A";
StringBuffer sb = new StringBuffer();
if (s.length()==0) {
System.out.println("ZZZ");
}else if (s.length()==1) {
sb.append("Z").append("Z").append(s);
System.out.println(sb.toString());
}else if (s.length()==2) {
sb.append("Z").append(s);
System.out.println(sb.toString());
}else {
System.out.println(s);
}
}
缺点是,如果要判断更多位数的话,这个方法就不适用了。
热心网友
时间:2022-06-26 23:05
public static void main(String[] args) {
String str = "A";
str = String.format("%3s",str);
str = str.replaceAll("\\s", "Z");
System.out.println("-"+str+"-");
}
也可以这样。这个方法的缺点是:str中最开始不能有空格。不知是否满足你的需求
热心网友
时间:2022-06-26 23:06
public class bdzd2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "A";
char[] buffer = new char[3];
char[] cs = str.toCharArray();
for(int i=1;i<=buffer.length;i++)buffer[buffer.length-i] = (cs.length-i)>=0?cs[cs.length-i]:'Z';
str = new String(buffer);
System.out.println(str);
}
}
热心网友
时间:2022-06-26 23:07
public static String lpad(String str){
for(int i = str.length();i < 3;i++){
str = "Z" + str;
}
return str;
}
热心网友
时间:2022-06-26 23:07
public String 方法名(str,str2){
while(true){
if(str.length<3){
str= str2+str;
}else{
break;
}
return str;
}
}追问这个太笨拙了。如果这样写,那还需要 判断一下str 是一位 还是两位
追答管他是一位还是两位,只要字符串长度小于三就给他加到前面就行了.