2016-03-04 65 views
0

我想做一個由用戶輸入的數字的泡泡排序,而不用詢問用戶他想輸入多少個數字。用戶可以輸入儘可能多的數字,程序應該將它們全部排序。所以我想在開始排序前在輸入中找到數字元素。下面是與用戶的工作代碼輸入陣列大小自己如何從java中的用戶輸入字符串獲取值的數量?

更新:它是多重的一個整數串例如「4 87 32 112 7」輸出我想是「4 7 32 87 112」(升序)

import java.util.Scanner; 
public class ArraySorting{ 
public static void main(String[] args){ 
Scanner in=new Scanner(System.in); 
System.out.println("Enter size of the array"); 
int z=in.nextInt(); 
int a[]=new int[z]; 
System.out.println("Enter numbers"); 
for(int i=0;i<z;i++){ 
a[i]=in.nextInt(); 
} 
for(int j=0;j<z-1;j++){ 
for(int p=0;p<(z-1)-j;p++){ 
if(a[p]>a[p+1]){ 
int n=a[p]; 
a[p]=a[p+1]; 
a[p+1]=n; 
}//if loop 
}//for loop 2 
}//for loop 1 
System.out.println("Numbers in Ascending order:"); 
for(int k=0;k<z;k++){ 
System.out.print(a[k]+" "); 
} 
} 
} 
+3

的可能的複製[轉換字符串在Java中詮釋?(http://stackoverflow.com/questions/5585779/converting-string-to- int-in-java) – Guy

+0

一個'String'包含多個數字嗎?或者只是組成一個數字的多個數字? –

+0

你能格式化代碼嗎? – Sufian

回答

0

可以將字符串句子轉換爲整數,該整數可以是用於冒泡排序的整數值輸入。

import java.util.Scanner;

公共類排序{

public static void main(String[] args) { 
    // TODO Auto-generated method stub 

    Scanner reader = new Scanner(System.in); 

    System.out.print("Enter the strings > "); 
    String s1 = new String(reader.nextLine()); 

    String[] str = s1.split(" "); 

    for(int i=1;i<str.length;i++){ 

     System.out.println(Integer.parseInt(str[i])); 
    } 
} 

}

相關問題