在JAVA中交换数组的相邻元素

在JAVA中交换数组的相邻元素,java,Java,q1:编写一个程序来打印给定输入的以下输出= 输入:aaa bbb ccc ddd eee fff ggg hhh iii jjj 输出:bbb aaa ddd ccc fff eee hhh ggg jjj iii 解决方案: package practice; import java.io.*; import java.util.*; public class happy { public static void main(String args[]) {

q1:编写一个程序来打印给定输入的以下输出=

输入:aaa bbb ccc ddd eee fff ggg hhh iii jjj

输出:bbb aaa ddd ccc fff eee hhh ggg jjj iii

解决方案:

package practice;

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

public class happy {
    public static void main(String args[])
    {
        Scanner in=new Scanner(System.in);
        int n=in.nextInt();
        String t;
        String arr[]=new String[n];
        for(int i=0;i<n;i++)
        {
            arr[i]=in.nextLine();
            t=arr[i];
            arr[i]=arr[i+1];
            arr[i+1]=t;
        }
        System.out.println(arr);
    }
}
包装实践;
导入java.io.*;
导入java.util.*;
公众阶级快乐{
公共静态void main(字符串参数[])
{
扫描仪输入=新扫描仪(系统输入);
int n=in.nextInt();
字符串t;
字符串arr[]=新字符串[n];

对于(inti=0;i使用Java split()方法对输入字符串进行拆分,并将输出存储到字符串数组中。从这里开始,这变得很容易

 Scanner scanner = new Scanner(System.in);
 String [] inputArr = scanner.nextLine().split(" ");
 for(int i = 0; i < inputArr.length; i++)
 {
    if( ( i+1 ) % 2 == 0 )
    {
        String temp = inputArr[i-1];
        inputArr[i-1] = inputArr[i];
        inputArr[i] = temp;
    }
 }
Scanner Scanner=新的扫描仪(System.in);
字符串[]inputArr=scanner.nextLine().split(“”);
for(int i=0;i
您是两个一对地工作。使用当前元素的模可以轻松地检查这些对(由于索引的工作方式,向其中添加1)。当if语句触发时(当没有余数时),它只需交换这两个元素


您也可以使用内置方法,因此,如果您希望使用更干净、可能更高效的方法,请查看上的Java文档。

您想交换相邻元素或相邻元素块,除以空间?您能展示您得到的以及您期望的吗?[Ljava.lang.String;@55f96302先生,我在控制台中得到了这个作为输出。我想交换相邻元素
arr
是一个数组,你不能用
System.out.println
打印数组-这就是为什么你得到
[Ljava.lang.String;@55f96302
。你需要
System.out.println(arrays.toString(arr))