public String getObjectNameFromTable(String tableName){
int index=tableName.indexOf("_");
String str1=tableName.substring(0,1).toUpperCase()+tableName.substring(1,index);
String str2=tableName.substring(index+1).substring(0,1).toUpperCase();
String str3=str1+str2+tableName.substring(index+2);
System.out.println("str3:"+str3);
if(-1!=str3.indexOf("_")){
getObjectNameFromTable(str3);
}
return str3;
}
String returnStr=new T().getObjectNameFromTable("web_web_apply");
System.out.println(returnStr);
// str3:WebWeb_apply
// str3:WebWebApply
// WebWeb_apply我想传递一个字符串,然后把字符串里面的"_"字符去掉,并且第一个字母大写,然后返回结果.
但是我执行方法之后再最后一次打印str3就是想要的结果,但是方法返回值确不是...求助!
public static String getObjectNameFromTable(String tableName) {
tableName = tableName.replaceAll("_", "");
if (tableName.length() > 1) {
tableName = tableName.substring(0, 1).toUpperCase()
+ tableName.substring(1);
} else {
tableName = tableName.toUpperCase();
}
return tableName;
}
public static String getObjectNameFromTable(String tableName) {
String[] array = tableName.split("_"); StringBuilder sb = new StringBuilder();
for(String str : array){
sb.append(upperCase(str));
}
return sb.toString();
} public static String upperCase(String str) {
if (str.length() > 1) {
str = str.substring(0, 1).toUpperCase() + str.substring(1);
}
return str;
}
String[] array = tableName.split("_");是将字符串安"_"分开 放入String数组
sb.append(upperCase(str));将数组字符串拼接起来
这样分隔比较好。
if (str.length() > 1) {
str = str.substring(0, 1).toUpperCase() + str.substring(1);
}
return str.toUpperCase();// 这样才是,漏写了。。
}