//示例:数据库字段: company_id --> java字段: companyId //主要是有大量的数据库字段时用起来方便 package com.demo.controller; import java.util.ArrayList; public class Test2 { public static void main(String[] args) { String databaseField="company_id company_id company_id company_id company_id"; String javaField = toPropertyName(databaseField); System.out.println("生成的java字段:"+javaField); } private static String toPropertyName(String s) { String key = "_"; System.out.println("传入的数据库字段:"+s); ArrayList<Integer> arrayList = new ArrayList<Integer>(); ArrayList<Integer> arrayList2 = new ArrayList<Integer>(); int a = s.indexOf(key);//*第一个出现的索引位置 while (a != -1) { arrayList.add(a); a = s.indexOf(key, a + 1);//*从这个索引往后开始第一个出现的位置 } for (int i = 0; i < arrayList.size(); i++) { arrayList2.add(arrayList.get(i) + 1); } StringBuilder sb = new StringBuilder(s); for (int i = 0; i < arrayList2.size(); i++) { char c = s.charAt(arrayList2.get(i)); int i1 = (int)c - 32; char c1 = (char)i1; s.replace("_",""); sb.replace(arrayList2.get(i), arrayList2.get(i)+1, c1+""); } return sb.toString().replace("_", ""); } }