import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String s = in.nextLine();
char[] ch = s.toCharArray();
int len = ch.length;
//1.整体进行了逆置
reverse(ch, 0, len - 1);
int i = 0; //遍历ch数组
while (i < len) {
int j = i;
while (j < len && ch[j] != ' ') {
j++;
}
if (j < len) {
reverse(ch, i, j - 1);
i = j + 1;
} else {
reverse(ch, i, j - 1);
i = j;
}
}
String str = new String(ch);
System.out.println(str);
}
public static void reverse(char[] array, int start, int end) {
while (start < end) {
char tmp = array[start];
array[start] = array[end];
array[end] = tmp;
start++;
end--;
}
}
}
package com.newcode;
import java.util.Scanner;
public class Demo2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String input=null;
String out=null;
Scanner sc=new Scanner(System.in);
input=sc.nextLine();
String [] result=input.split(" ");
int i,j;
j=result.length-1;
for( i=0;i<=(result.length-1)/2;i++) {
if(i!=j) {
String temp=result[i];
result[i]=result[j];
result[j]=temp;
j--;
}
}
out="";
for(i=0;i<result.length;i++) {
if(i<result.length-1)out=out+result[i]+" ";
else {
out=out+result[i];
}
}
System.out.println(out);
}
}
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner s = new Scanner(System.in);
String str = s.nextLine();
String[] str2 = str.split(" ");
for(int i = str2.length-1;i>0;i--){
System.out.print(str2[i]+" ");
}
System.out.print(str2[0]);
}
}
import java.util.Scanner; public class Main{ public static void main(String[] args) { String[] str = new Scanner(System.in).nextLine().split(" "); for(int i=0;i<str.length;i++){ System.out.print(str[str.length-1-i]+" "); } } }这个在Idea上可以出来,到了这儿怎么不行了呢???
import java.util.Scanner;
public class DaoZhi {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String[] ss = sc.nextLine().split(" ");
for (int i =ss.length-1 ; i > -1; i--) {
System.out.print(ss[i]);
if(i!=0) {
System.out.print(" ");
}
}
}
}
1、思路其实很简单,首先把字符串按空格符分隔成数组,数组按倒序输出,拼接字符串+空格
import java.util.*;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = null;
String result = "";
while((input = br.readLine()) != null){
String[] arr = input.split(" ");
for(int i = arr.length-1; i >=0; i--){
result += arr[i];
if(i != 0){
result += " ";
}
}
System.out.println(result);
}
}
}
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()) {
String string = in.nextLine();
String[] strings = string.split("\\s");
for (int i = strings.length - 1; i >= 0; i--) {
if (i > 0) System.out.print(strings[i] + " ");
else System.out.println(strings[i]);
}
}
}
}
import java.util.Scanner; public class Main { public static void main(String args[]) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()) { String[] strings = scanner.nextLine().split(" "); StringBuffer sb = new StringBuffer(); for (int i = strings.length - 1; i > 0; i--) { sb.append(strings[i]); sb.append(" "); } sb.append(strings[0]); System.out.println(sb.toString()); } } }
import java.util.Scanner;
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in);
String data = scanner.nextLine();
String[] strs = data.split(" ");
for(int i = strs.length - 1; i >= 0; i--)
{
if(i != 0)
{
System.out.print(strs[i] + " ");
}
else
{
System.out.print(strs[i]);
}
}
scanner.close();
}
}
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
while(sc.hasNext())
{
String s =sc.nextLine();
String []str= s.split(" ");
int len =str.length;
for(int i=0;i<len/2;i++)
{
swap(str,i,len-1-i);
}
for(int i=0;i<len-1;i++)
{
System.out.print(str[i]+" ");
}
System.out.print(str[len-1]);
}
}
public static void swap(String str[],int i,int j)
{
String t =str[i];
str[i]=str[j];
str[j]=t;
}
} public class Main{
//先对整个字符串翻转,记为s1,然后对s2以空格分割为字符串数组s2,
//分别对字符串数组s2中的每个字符串再翻转,即可。
public static void main(String[] args){
Scanner in = new Scanner(System.in);
String s = in.nextLine();
String s1 = reverse(s);
String[] s2 = s1.split(" ");
StringBuilder res = new StringBuilder();
for(int i=0; i<s2.length; ++i){
String s3 = reverse(s2[i]);
res.append(s3);
res.append(" ");
}
res.deleteCharAt(res.length()-1);
System.out.println(res.toString());
}
//翻转字符串函数
public static String reverse(String s){
char [] c = s.toCharArray();
int len = c.length;
for(int i=0; i<= (len/2)-1; ++i){
char temp = c[i];
c[i] = c[len-1-i];
c[len-i-1] = temp;
}
StringBuilder sb = new StringBuilder();
for(int i=0; i<c.length; ++i){
sb.append(c[i]);
}
return sb.toString();
}
}