2016-03-04 66 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])); 
    } 
} 

}

相关问题