题解 | #字符串排序#

字符串排序

http://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584

Java解法

使用List类

'list_l.add(...)' 添加元素

'list_l.sort(new Comparator(){})' 自定义排序方法,对list_l进行排序

使用StringBuilder类进行String构造,可用append添加字符,最后用toString转成String类型

'stringBuilder_sb.append(char_c)'

'stringBuilder_sb.toString()'

import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		String s = in.nextLine();
		List<Character> letters = new ArrayList<>();
		//得到所有字母
		for(int i=0;i<s.length();i++) {
			if(Character.isLetter(s.charAt(i))==true) {
				letters.add(s.charAt(i));
			}
		}
		//对字母进行排序
		letters.sort(new Comparator<Character>() {
			@Override
			public int compare(Character arg0, Character arg1) {
				return Character.toLowerCase(arg0)-Character.toLowerCase(arg1);
			}			
		});
		
		StringBuilder strb = new StringBuilder();
		for(int i=0,j=0;i<s.length();i++) {
			if(Character.isLetter(s.charAt(i))==true) {
				strb.append(letters.get(j++));
			}else {
				strb.append(s.charAt(i));
			}
		}
		System.out.println(strb.toString());
	}
}
全部评论

相关推荐

牛客963010790号:一般是hr拿着老板账号在招人不是真是老板招
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务