我编了一个小程序想实现输入几个数字,然后对着几个数字进行排序,但是现在有点问题,只能打印第一个数字出来,请大家帮我看看问题在哪里?
import java.util.*;
class add
{
private int[] array;
private int nElam;
public add()
{
array=new int[100];
nElam=0;
}
public void insert(int vlaue)
{
array[nElam]=vlaue;
nElam++;
}
public void display()
{
for(int i=0;i<nElam;i++)
{
System.out.println(array[i]);
}
}
public void bubblesort()
{
for(int i=nElam-1;i>1;i--)
{
for(int j=0;j<i;j++)
{
swep(array[j],array[j+1]);
}
}
}
public void swep(int one,int two)
{
int temp=array[one];
array[one]=array[two];
array[two]=temp;
}
}public class java { public static void main(String[] args) {
Vector v=new Vector();
add arr = new add();
int b =0;
System.out.println("please inter the number");
try
{
b=System.in.read();
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
if(b=='\r'||b=='\n')
return ;
else
{
int num=b-'0';
v.addElement(new Integer(num));
}
int sum=0;
Enumeration e = v.elements();
while(e.hasMoreElements())
{
Integer tt= (Integer)e.nextElement();
sum=tt.intValue();
arr.insert(sum);
}
arr.bubblesort();
arr.display();
}
}
import java.util.*;
class add
{
private int[] array;
private int nElam;
public add()
{
array=new int[100];
nElam=0;
}
public void insert(int vlaue)
{
array[nElam]=vlaue;
nElam++;
}
public void display()
{
for(int i=0;i<nElam;i++)
{
System.out.println(array[i]);
}
}
public void bubblesort()
{
for(int i=nElam-1;i>1;i--)
{
for(int j=0;j<i;j++)
{
swep(array[j],array[j+1]);
}
}
}
public void swep(int one,int two)
{
int temp=array[one];
array[one]=array[two];
array[two]=temp;
}
}public class java { public static void main(String[] args) {
Vector v=new Vector();
add arr = new add();
int b =0;
System.out.println("please inter the number");
try
{
b=System.in.read();
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
if(b=='\r'||b=='\n')
return ;
else
{
int num=b-'0';
v.addElement(new Integer(num));
}
int sum=0;
Enumeration e = v.elements();
while(e.hasMoreElements())
{
Integer tt= (Integer)e.nextElement();
sum=tt.intValue();
arr.insert(sum);
}
arr.bubblesort();
arr.display();
}
}
解决方案 »
- 给想学好Javaswing的同学一个好东西
- 关于输入输出的问题
- 怎么用java解密 C# 写的3DES加密 我想用java解密 关键是Key 又被MD5加密 哈稀了~
- 关于对象的引用问题
- struts单选按钮动态绑定
- 求救有关打包成jar的问题
- Exception in thread "main" java.lang.NoSuchMethodError: main别用老眼光看这个问题!1
- 请教面向对象基础问题:能否把父类对象直接转为子类对象?
- 请朋友们帮忙介绍本WebLogic的入门书!
- 做一个java的客户端,向服务器端发“GET”请求,如何做到?
- about hashCode() ?
- java下那种可视化编程工具最好???
建议用readLine,用空格分隔各个数字,然后字符串split(" ")
然后Integer.parseInt()各个字符串,然后排序
import java.util.*;
class add
{
private int[] array;
private int nElam;
public add()
{
array=new int[100];
nElam=0;
}
public void insert(int vlaue)
{
array[nElam]=vlaue;
nElam++;
}
public void display()
{
for(int i=0;i<nElam;i++)
{
System.out.println(array[i]);
}
}
public void bubblesort()
{
for(int i=nElam-1;i>1;i--)
{
for(int j=0;j<i;j++)
{
swep(array[j],array[j+1]);
}
}
}
public void swep(int one,int two)
{
int temp=array[one];
array[one]=array[two];
array[two]=temp;
}
}public class java { public static void main(String[] args) {
Vector v=new Vector();
add arr = new add();
int b =0;
System.out.println("please inter the number");
while(true)
{
try
{
b=System.in.read();
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
if(b=='\r'||b=='\n')
break ;
else
{
int num=b-'0';
v.addElement(new Integer(num));
}
}
int sum=0;
Enumeration e = v.elements();
while(e.hasMoreElements())
{
Integer tt= (Integer)e.nextElement();
sum=tt.intValue();
arr.insert(sum);
}
arr.bubblesort();
arr.display();
}
}但是结果还是不对,输入5819 得到0019 应该是9851啊
BufferedReader b = new BufferedReader(new InputStreamReader(System.in)));
String s = b.readLine();
String[] ss= s.split(" ");
int[] a = new int[ss.length];
for(int i=0'i<ss.length;i++){
a[i]=Integer.parseInt(ss[i]);
}
然后对a进行排序就可以了!
package thinking;
class add
{
private int[] array;
private int nElam; public add()
{
array=new int[100];
nElam=0;
}
public void insert(int vlaue)
{
array[nElam]=vlaue;
nElam++; }
public void display()
{
for(int i=0;i<nElam;i++)
{
System.out.println(array[i]);
} }
public void bubblesort()
{ for(int i=nElam-1;i>1;i--)
{
for(int j=0;j<i;j++)
{
swep(array[j],array[j+1]);
}
} }
public void swep(int one,int two)
{
int temp=array[one];
array[one]=array[two];
array[two]=temp; }
}
import java.util.*;
class add
{
private int [] array;
private int nElam;
public add()
{
array=new int[100];
//nElam=0;
}
public void insert(int vlaue)
{//
nElam=0;
array[nElam]=vlaue;
nElam++;
System.out.println(array[nElam]);
}
public void display()
{
for(int i=0;i<nElam;i++)
{
System.out.println(array[i]);
}
}
public void bubblesort()
{
for(int i=nElam-1;i>0;i--)
{
for(int j=0;j<i;j++)
{
if(array[j]>array[j+1])
swep(array[j],array[j+1]);
}
}
}
public void swep(int one,int two)
{
int temp=array[one];
array[one]=array[two];
array[two]=temp;
}
}public class java { public static void main(String[] args) {
Vector v=new Vector();
add arr = new add();
int b =0;
System.out.println("please inter the number");
while(true)
{
try
{
b=System.in.read();
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
if(b=='\r'||b=='\n')
break ;
else
{
int num=b-'0';
v.addElement(new Integer(num));
}
}
int sum=0;
Enumeration e = v.elements();
while(e.hasMoreElements())
{
Integer tt= (Integer)e.nextElement();
sum=tt.intValue();
//System.out.println(sum);
arr.insert(sum);
}
arr.bubblesort();
arr.display();
}
}