Java實(shí)現(xiàn)對(duì)字符串中的數(shù)值進(jìn)行排序操作示例
本文實(shí)例講述了Java實(shí)現(xiàn)對(duì)字符串中的數(shù)值進(jìn)行排序操作。分享給大家供大家參考,具體如下:
問(wèn)題:
對(duì)"34 9 -7 12 67 25"這個(gè)字符串中的數(shù)值從小到大排序!
解決方法:
先介紹幾個(gè)eclipse快捷鍵:輸入for再按下"alt+/"可快速寫(xiě)一個(gè)for循環(huán)

選中某一個(gè)小寫(xiě)單詞 Ctrl+Shift+x 可變大寫(xiě),選中某一個(gè)大寫(xiě)單詞 Ctrl+Shift+y 可變小寫(xiě)
下面請(qǐng)看具體實(shí)現(xiàn)代碼:
import java.util.Arrays;
public class Main_4 {
private static String SPACE=" ";
public static void main(String[] args)
{
/*
* 綜合練習(xí):
* 對(duì)"34 9 -7 12 67 25"這個(gè)字符串中的數(shù)值從小到大排序
*/
String str="34 9 -7 12 67 25";
str=sortStringNumber(str);
System.out.println(str);
}
private static String sortStringNumber(String str) {
// 1 將字符串中的數(shù)值通過(guò)一定的規(guī)則進(jìn)行切割獲取字符串?dāng)?shù)組
String[] str_nums=toStringArray(str);
// 2 將字符串?dāng)?shù)組轉(zhuǎn)換成int數(shù)組
int[] nums=toIntArray(str_nums);
// 3 對(duì)int數(shù)組排序
sortIntArray(nums);
// 4 將int數(shù)組變成字符串
return ArrayToString(nums);
}
/*
* 將int數(shù)組變成字符串
*/
private static String ArrayToString(int[] nums) {
// 1 創(chuàng)建字符串緩沖區(qū)
StringBuilder sb=new StringBuilder();
for (int i = 0; i < nums.length; i++) {
if(i!=nums.length-1)
sb.append(nums[i]+SPACE);
else
sb.append(nums[i]);
}
return sb.toString();
}
/*
* 對(duì)int數(shù)組排序
*/
private static void sortIntArray(int[] nums) {
Arrays.sort(nums);
}
/*
* 將字符串?dāng)?shù)組轉(zhuǎn)換成int數(shù)組
*/
private static int[] toIntArray(String[] str_nums) {
// 定義一個(gè)int數(shù)組
int[] arr=new int[str_nums.length];
// 對(duì)字符串?dāng)?shù)組進(jìn)行遍歷
for (int i = 0; i < arr.length; i++) {
// 將數(shù)組格式的字符串轉(zhuǎn)成整數(shù),存儲(chǔ)到arr數(shù)組中
arr[i]=Integer.parseInt(str_nums[i]);
}
return arr;
}
/*
* 將字符串轉(zhuǎn)成字符串?dāng)?shù)組
*/
private static String[] toStringArray(String str) {
return str.split(SPACE);
}
}
運(yùn)行結(jié)果:

PS:這里再為大家推薦一款關(guān)于排序的演示工具供大家參考:
在線(xiàn)動(dòng)畫(huà)演示插入/選擇/冒泡/歸并/希爾/快速排序算法過(guò)程工具:
http://tools.jb51.net/aideddesign/paixu_ys
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
相關(guān)文章
springboot使用redis對(duì)單個(gè)對(duì)象進(jìn)行自動(dòng)緩存更新刪除的實(shí)現(xiàn)
本文主要介紹了springboot使用redis對(duì)單個(gè)對(duì)象進(jìn)行自動(dòng)緩存更新刪除的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
java ConcurrentHashMap分段加鎖提高并發(fā)效率
這篇文章主要為大家介紹了java ConcurrentHashMap分段加鎖提高并發(fā)效率,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12
springboot配置允許跨域訪(fǎng)問(wèn)代碼實(shí)例
這篇文章主要介紹了springboot配置允許跨域訪(fǎng)問(wèn)代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09
以Java代碼的方式總結(jié)幾個(gè)典型的內(nèi)存溢出案例
作為程序員,多多少少都會(huì)遇到一些內(nèi)存溢出的場(chǎng)景,如果你還沒(méi)遇到,說(shuō)明你工作的年限可能比較短,或者你根本就是個(gè)假程序員!哈哈,開(kāi)個(gè)玩笑.今天分享給大家Java內(nèi)存溢出的相關(guān)案例,希望大家在日常工作中,盡量避免寫(xiě)這些low水平的代碼,需要的朋友可以參考下2021-06-06
SpringBoot 整合 Avro 與 Kafka的詳細(xì)過(guò)程
本文介紹了如何在Spring Boot中使用Avro和Kafka進(jìn)行數(shù)據(jù)的序列化和反序列化,并通過(guò)MyBatisPlus將數(shù)據(jù)存入數(shù)據(jù)庫(kù),感興趣的朋友跟隨小編一起看看吧2024-12-12
Java網(wǎng)絡(luò)編程基礎(chǔ)篇之單向通信
這篇文章主要介紹了Java網(wǎng)絡(luò)編程里通過(guò)套接字實(shí)現(xiàn)單向通信的方法及相關(guān)實(shí)例,屬于網(wǎng)絡(luò)編程入門(mén)程序,雖然簡(jiǎn)單,但具有一定參考價(jià)值,需要的朋友可以參考下。2017-09-09
Java實(shí)現(xiàn)兩人五子棋游戲(七) 屏幕提示信息
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)兩人五子棋游戲,屏幕提示游戲信息,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03
Java工程編碼格式由GBK轉(zhuǎn)化成utf-8的具體實(shí)現(xiàn)
在寫(xiě)項(xiàng)目的過(guò)程中我發(fā)現(xiàn)有的地方編碼格式被設(shè)置成了 gbk 如果用eclipse等工具直接改回utf-8編碼格式則會(huì)出現(xiàn)亂碼,所以本文給大家介紹了Java工程編碼格式由GBK轉(zhuǎn)化成utf-8的具體實(shí)現(xiàn),感興趣的朋友可以參考下2024-05-05
Java有趣好玩的圖形界面開(kāi)發(fā)八個(gè)案例實(shí)現(xiàn)
今天使用GUI技術(shù)寫(xiě)了幾個(gè)練習(xí)的Demo,希望對(duì)大家學(xué)習(xí)圖形用戶(hù)界面有所幫助,感興趣的同學(xué)來(lái)看看吧,動(dòng)手敲一遍理解更通透2022-05-05

