问题描述
对于一个字符串(只包含字母和数字)进行处理。首先分开其中的字母和数字,然后将字母序列大小写互换,数字序列连接在字母序列之后输出。比如输入的是a1b2c34DE567F890,输出应该是ABCdef1234567890。
解决方案
解决方案二:
分三个数组char[]a,b,c。分别存放大写字母字符、小写字母字符、数字字符。将原字符串拆分成字符数组,遍历数组,使用字符比较,分别放到a、b、c数组中。然后a、b、c顺序拼接起来
解决方案三:
List<Character>charList=newArrayList<Character>();List<Character>numberList=newArrayList<Character>();Stringstr="a1b2c34DE567F890";for(Charactercharacter:str.toCharArray()){if(Character.isDigit(character)){numberList.add(character);}else{if(Character.isUpperCase(character)){charList.add(Character.toLowerCase(character));}else{charList.add(Character.toUpperCase(character));}}}charList.addAll(numberList);System.out.println(charList);
解决方案四:
该回复于2014-09-17 16:58:45被版主删除
时间: 2024-10-24 02:09:01