生活随笔
收集整理的這篇文章主要介紹了
Java字符串的字符进行排序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
要求:
對 “abc”,“fcc”,“egfd”,“asd”,“rtgh”,“deghk”,"fcc"字段進行排序,要求滿足其為升序排列同時每個字符串里也是升序排列
思路:
- 方法1:冒泡排序 :
思路:先獲取字符串數組里的每個字符串,然后使用toCharArray()方法得到這個字符串的char[] 再對char數組里的元素進行對比,冒泡排序前面大的與后面交換順序,再把得到的char數組重新轉換為String,存入到一個新的String數組中,然后在整體對新數組中各個字符串使用冒泡排序從而得到結果) - 方法2:使用 Arrays.sort(s);方法進行排序
import java
.util
.Arrays
;
public class 字符排序
{public static void main(String
[] args
) {String
[] str
= new String[]{"abc","fcc","egfd","asd","rtgh","deghk","fcc"};printArr(stringRank(test(str
)));String
[] s
= sortChar(str
);Arrays
.sort(s
);printArr(s
);}private static String
[] test(String
[] str
){String st
[] = st
= new String[str
.length
];for (int i
= 0; i
< str
.length
; i
++) {char[] c
= str
[i
].toCharArray();charRank(c
);String s
= new String(c
);st
[i
] = s
; }return st
;}private static void charRank(char[] c
){for (int j
= 0; j
< c
.length
; j
++) {for (int j2
= 0; j2
< c
.length
-j
-1; j2
++) {if(c
[j2
]>c
[j2
+1]){char len
= c
[j2
];c
[j2
] = c
[j2
+1];c
[j2
+1] = len
;}}}}private static String
[] stringRank(String
[] str
) {for (int i
= 0; i
< str
.length
; i
++) {for (int j
= 0; j
< str
.length
- i
- 1; j
++) {if (str
[j
].compareTo(str
[j
+ 1]) > 0) {String s
= str
[j
];str
[j
] = str
[j
+ 1];str
[j
+ 1] = s
;}}}return str
;}private static String
[] sortChar(String
[] str
) {String
[] s
= new String[str
.length
];for (int i
= 0; i
< str
.length
; i
++) {char[] c
= str
[i
].toCharArray();Arrays
.sort(c
);s
[i
] = String
.valueOf(c
);}return s
;}private static void printArr(String
[] str
){for (int i
= 0; i
< str
.length
; i
++) {System
.out
.print(str
[i
]+"\t");}System
.out
.println();}}
————————————————
版權聲明:本文為CSDN博主「qq_37850436」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_37850436/article/details/79464662
總結
以上是生活随笔為你收集整理的Java字符串的字符进行排序的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。