十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專(zhuān)業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
public class SortNumString {//定義SortNumString方法 public static String[] sortNumStr(String numStr){// 定義一個(gè)String[](數(shù)組)為返回值的類(lèi)并且?guī)?shù)(String numStr) if(numStr==null||numStr.trim().equals(""))//if判斷如果numStr為空值 return null; //就返回(return)空(null) StringTokenizer mToken = new StringTokenizer(numStr);//定義變量 String[] result = new String[mToken.countTokens()];//實(shí)例化變量把它賦給一個(gè)數(shù)組 int i = 0;//定義i while(mToken.hasMoreTokens()){ //進(jìn)行while循環(huán) result[i] = mToken.nextToken();//從i即0開(kāi)始從數(shù)組取值 i++;//每取出一個(gè)值就自增+1取下個(gè)值 } return result;//返回這組值 } public static void main(String[] args){//主方法 String[] s = sortNumStr("99 345 8 888 55 0 -9999 30");//為這個(gè)數(shù)組賦值 int[] ii = new int[s.length];//定義數(shù)組ii規(guī)定長(zhǎng)度為String[] result數(shù)組的個(gè)數(shù) for(int i = 0;iii.length;i++ ){//進(jìn)行for循環(huán) 定義i,并且i小于int[] ii數(shù)組的長(zhǎng)度,每循環(huán)一次自增一次i++ ii[i] = Integer.parseInt(s[i]); //為int[]賦值并強(qiáng)轉(zhuǎn)為Integer類(lèi)型 } Arrays.sort(ii);//對(duì)指定的數(shù)進(jìn)行排序 //ASC for(int i = 0; i ii.length;i++){//循環(huán)輸出int[] ii數(shù)組的值 if (i 0) {//如果i0 System.out.print(" ");//則輸出“ ” } System.out.print(ii[i]);//否則輸出int[] ii數(shù)組的值 } /* //DESC for(int i = s.length -1;i=0;i--){ if (i s.length-1) { System.out.print(" "); } System.out.print(ii[i]); }*/ } }
創(chuàng)新互聯(lián)是一家專(zhuān)業(yè)提供同仁企業(yè)網(wǎng)站建設(shè),專(zhuān)注與做網(wǎng)站、成都網(wǎng)站建設(shè)、H5技術(shù)、小程序制作等業(yè)務(wù)。10年已為同仁眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。
冒泡排序
public static void main(String[] args) {
int [] num=new int[3];
num[0]=23;
num[1]=45;
num[2]=22;
System.out.println("數(shù)組排序前為");
for(int i=0;inum.length;i++){
System.out.print (num[i]+" ");
}
int temp;
for(int i=0;inum.length;i++){
for(int j=0;jnum.length-i-1;++j){
if(num[j]num[j+1]){
temp=num[j];
num[j]=num[j+1];
num[j+1]=temp;
}
}
}
System.out.println("\n輸出數(shù)組升序后為");
for(int i=0;inum.length;i++){
System.out.print(num[i]+" ");
}
}
/**
?*?str(需要排序的字符串),desc(true:從小到大,false:從大到小)
?*?@param?str
?*?@param?desc
?*/
public?static?void?stringSort(String?str,boolean?desc){
char[]?array=str.toCharArray();
if(desc){//從小到大排序
for?(int?i?=?0;?i?array.length;?i++)?{
for(int?j=0;jarray.length-i-1;j++){
if(array[j]array[j+1]){
char?temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
System.out.print("從小到大:");
for?(int?i?=?0;?i??array.length;?i++)?{
if(i==array.length-1){
System.out.println(array[i]);
}else{
System.out.print(array[i]+",");
}
}
}else{
for?(int?i?=?0;?i?array.length;?i++)?{
for(int?j=0;jarray.length-i-1;j++){
if(array[j]array[j+1]){
char?temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
System.out.print("從小到大:");
for?(int?i?=?0;?i??array.length;?i++)?{
if(i==array.length-1){
System.out.println(array[i]);
}else{
System.out.print(array[i]+",");
}
}
}
}
思路如下:
1,錄入字符串
2,使用正則表達(dá)式分割
3,轉(zhuǎn)換為int數(shù)組
4,排序
5,拼接,代碼如下:
import?java.util.Arrays;
import?java.util.Scanner;
public?class?Demo8?{
public?static?void?main(String[]?args)?{
Scanner?sc?=?new?Scanner(System.in);
String?str?=?sc.nextLine();//?錄入字符串
String[]?strs?=?str.split(",");//?使用正則表達(dá)式進(jìn)行分割
int[]?is?=?new?int[strs.length];
for?(int?i?=?0;?i??strs.length;?i++)?{//?遍歷String數(shù)組,賦值給int數(shù)組
is[i]?=?Integer.parseInt(strs[i]);
}
Arrays.sort(is);//?使用數(shù)組工具類(lèi)進(jìn)行排序,也可以自己使用冒泡或選擇排序來(lái)進(jìn)行排序
StringBuffer?sb?=?new?StringBuffer();
for?(int?i?=?0;?i??is.length;?i++)?{//?遍歷進(jìn)行拼接
if?(i?==?is.length?-?1)?{
sb.append(is[i]);
}?else?{
sb.append(is[i]?+?",");
}
}
System.out.println(sb.toString());
}