编写程序,循环接收用户从键盘输入多个字符串,直到输入“end”时循环结束,并将所有已输入的字符串按字

注意是多个字符串。用java。要能编译成功。谢谢编写程序,循环接收用户从键盘输入多个字符串,直到输入“end”时循环结束,并将所有已输入的字符串按字典顺序倒序打印在线急等... 注意是多个字符串。用java。要能编译成功。谢谢
编写程序,循环接收用户从键盘输入多个字符串,直到输入“end”时循环结束,并将所有已输入的字符串按字典顺序倒序打印

在线急等!!!分不是问题!!
展开
 我来答
jianjiegao
推荐于2017-10-04 · TA获得超过273个赞
知道小有建树答主
回答量:404
采纳率:0%
帮助的人:269万
展开全部
//用的IO流
//部分使用hanqiyg的代码

import java.io.*;
import java.util.*;

public class Read {
public static void main(String[] args) {
String x = null;
List<String> slist = new ArrayList<String>();
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Input:");
try {
do {
x = in.readLine();
slist.add(x);
} while (!x.equals("end"));
in.close();
System.out.println("output:");
for (int i = slist.size() - 2; i >= 0; i--) {//-1会得end
System.out.println(slist.get(i));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}

/*
Input:
123
456
end
output:
456
123
*/
追问

运行不正确

追答

不好意思,忘了倒序了

import java.io.*;
import java.util.*;

public class Read {
public static void main(String[] args) {
String x = null;
List<String> slist = new ArrayList<String>();
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Input:");
try {
do {
x = in.readLine();
slist.add(x);
} while (!x.equals("end"));
in.close();
System.out.println("output:");
//从此处起修改
String[] str=new String[slist.size()];
int p=0;//当前元素数量
for (int i = slist.size() - 2; i >= 0; i--){
String tmp = slist.get(i);
int j=0;
for(j=0;j<p;j++){
if(tmp.charAt(0)>str[j].charAt(0))break;
}
for(int k=++p;k>j;k--){
str[k]=str[k-1];
}
str[j]=tmp;
}
for(int pi=0;pi<p;pi++){
System.out.print(str[pi]);
System.out.println();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}

/*

Input:

z00

u00

x00

a00

b00

end

output:

z00

x00

u00

b00

a00

*/

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嫉恶如仇尼玛
2013-07-17 · TA获得超过141个赞
知道答主
回答量:234
采纳率:100%
帮助的人:169万
展开全部
import java.util.Scanner;
public class baidu {
public static void main(String[]args){
String x="";
Scanner as=new Scanner(System.in);
while(x!="end"){
x=as.nextLine();
}
as.close();
}
}

不知道你的倒叙打印是什么,写清楚点再帮你弄,
追问
可以用IO流么。
就是abc bcd dba 倒序之后 dba bcd abc了
追答
首字母倒叙啊。规定io流。。规定就用吧,要出来字母顺序还是  直接倒叙?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hanqiyg
2013-07-17
知道答主
回答量:11
采纳率:0%
帮助的人:1.7万
展开全部
什么叫字典顺序倒叙?zxy?
详细说清楚点,输入时什么格式的,想要的输出时什么样的。我编一个发给你,这个应该很简单。
更多追问追答
追问
可以用IO流么。
就是abc bcd dba 倒序之后 dba bcd abc了
追答
哦。那就是像堆栈一样,先入后出,字符串不用处理是吧,这很简单啊。稍等。
借用上面的程序。呵呵。

程序调试通过了。~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
IO流,你要怎么用io流?具体。

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class baidu {
public static void main(String[]args){

String x= null;
List slist = new ArrayList();
Scanner as=new Scanner(System.in);
while(!(x=as.nextLine()).equals("end")){
System.out.println("input:"+x);
slist.add(x);
}
System.out.println("output:");
for(int i=slist.size()-1;i>=0;i--){
System.out.println(slist.get(i));
}
as.close();
}
}

结果:
1
input:1
2
input:2
3
input:3
4
input:4
end
output:
4
3
2
1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式