package com.company.base; import java.util.Arrays; import java.util.Collections; import java.util.List; public class ReverseString {     public static void main(String[] args) {         String str = "每隔k个字符翻转一次字符串,不足k个不翻转12";         String result = reverseStr(str, 3);         System.out.println(result);     }     public static String reverseStr(String str, int k) {         if (str == null || str.length() == 0)             return null;         String[] result = str.split("(?<=\\G.{"+k+"})(?=.)");         StringBuffer buffer = new StringBuffer();         for (String item : result) {             if (item.length() == k) {                 List<String> asList = Arrays.asList(item.split("(?<=\\G.{1})(?=.)"));                 Collections.reverse(asList);                 asList.forEach(s -> {//能不能不要再次循环了?                     buffer.append(s);                 });             } else {                 buffer.append(item);             }         }         return buffer.toString();     } }