一个小程序,解决立即结分!!

cambridgeboy 2006-05-30 04:43:50
学习Java没多久,遇到这个问题 实在是无从下手。

1.编写一个程序,该程序将从命令行参数接受一些字符串值并将这些值存在
Vector中。倒序显示Vector中的内容,然后降序排序并显示该内容。
...全文
222 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
believefym 2006-05-30
  • 打赏
  • 举报
回复
上面是逆序,笔误
believefym 2006-05-30
  • 打赏
  • 举报
回复
给个倒序的代码参考(可以考虑ArrayList代替Vector)
public static void reverse(Vector<String> v){
String[]s = (String[])(v.toArray(new String[0]));
Arrays.sort(s,Collections.reverseOrder());
System.out.println(Arrays.toString(s));
}
cambridgeboy 2006-05-30
  • 打赏
  • 举报
回复
JDK1.5怎么编译都通不过啊?
trumplet 2006-05-30
  • 打赏
  • 举报
回复
public static void main(String[] args) {
Vector<String> v = new Vector<String>();
LineNumberReader lnr;
lnr = new LineNumberReader(new InputStreamReader(System.in));
String string="";
try {
while (!(string=lnr.readLine()).equalsIgnoreCase("end")){
v.add(string);
}
} catch (IOException ex) {
ex.printStackTrace();
}
System.out.println("-----倒序显示-----");
for (int i=v.size()-1;i>=0;i--)System.out.println(v.get(i));

for(int i=0;i<v.size()-1;i++)
for (int j=i+1;j<v.size();j++)
if (v.get(i).compareTo(v.get(j))>0){
String temp = v.get(i);
v.set(i,v.get(j));
v.set(j,temp);
}
System.out.println("-----降序显示-----");
for (int i=v.size()-1;i>=0;i--)System.out.println(v.get(i));
}
凋零的老树 2006-05-30
  • 打赏
  • 举报
回复
vector都被取代了
afrag 2006-05-30
  • 打赏
  • 举报
回复
import java.util.Vector;

public class Test {

public static void main(String[] args)
{
Vector vector = new Vector();
int size = args.length;
for (int i=0; i<size; i++)
{
vector.add(args[i]);
}

//到序显示
size = vector.size();
for (int i=size -1; i>=0;i--)
{
System.out.print(vector.elementAt(i));
System.out.print(" ");
}
System.out.println();

//将vector种的数据降序排列
vector = sortVector(vector);
//显示
size = vector.size();
for (int i=0; i<size;i++)
{
System.out.print(vector.elementAt(i));
System.out.print(" ");
}


}

public static Vector sortVector(Vector vector)
{
int size = vector.size();
int i,j;
for (j=0; j<size-1; j++)
{
for (i=j; i<size; i++)
{
String firstString = (String)vector.elementAt(j);
String curString = (String)vector.elementAt(i);
if (firstString.compareTo(curString)<0)
{
vector.setElementAt(curString,j);
vector.setElementAt(firstString,i);
}
}
}
return vector;
}
}


运行结果:
java Test aa ab ac aaa bb cc ad ca cb dd dc
dc dd cb ca ad cc bb aaa ac ab aa
dd dc cc cb ca bb ad ac ab aaa aa
sololodestar 2006-05-30
  • 打赏
  • 举报
回复
参考一下这个
import java.io.*;
class Input
{static InputStreamReader in;
static BufferedReader reader;
static
{in=new InputStreamReader(System.in);
reader=new BufferedReader(in);
}


static String readString()
{String s="";
try
{ s=reader.readLine();

}

catch(IOException e)
{System.out.println(e);
System.exit(0);
}
return s;
}

static char readChar()
{char ch=''a'';
try
{
String s=readString();
ch=s.charAt(0);

}
catch(Exception e)
{System.out.println("输入的数据类型不对,程序将退出");
System.exit(0);
}
return ch;
}


static int readInt()
{String s=readString();
int i=0;
try{
i=Integer.parseInt(s);
}
catch(Exception e)
{System.out.println("输入的数据类型不对,程序将退出");
System.exit(0);
}
return i;
}
static double readDouble()
{String s=readString();
double d=0.0;
try
{d=Double.parseDouble(s);
}
catch(Exception e)
{System.out.println("输入的数据类型不对,程序将退出");
System.exit(0);
}
return d;
}
static float readFloat()
{
String s=readString();
float f=0.0f;
try
{
f=Float.parseFloat(s);
}
catch(Exception e)
{ System.out.println("输入的数据类型不对,程序将退出");
System.exit(0);
}
return f;
}
}

用法举例,从键盘输入十个整数:
class InoutData
{public static void main(String args[])
{ int a[]=new int[10];
for(int i=0;i<10;i++)
{ System.out.println("请输入数");
a[i]=Input.readInt();
}
for(int i=0;i<10;i++)
System.out.println("a["+i+"]="+a[i]);
}
}

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧