利用String 的split 把字符串切割成数组 split("") 引号之间就相当于切割符号
利用Integer.valueOf()把数组转化为int { 否则就一直用不了转换的数组(为什么呢,有没有大佬解释一下)
数组元素交换,要求:(1)最大的元素与第一个元素交换(2)最小的元素与最后一个元素交换。
输入格式:
输入一行字符串(由不同的整数组成,以空格分开)
输出格式:
首先以数组形式输出初始字符串(一行一个数字),然后以数组形式输出完成交换后的字符串(一行一个数字)。
样例">样例">样例">样例">样例">样例">样例"输入样例:
2 9 0 10
输出样例:
2
9
0
10
10
9
2
0
代码
import java.util.Scanner;
public class Main
{
public static void main( String[] args )
{
int b [] = new int[100];
int max=0; int min=0; //最大的数值和所在的数组位置
int maxs=0; int mins=0; //最小的数值和所在的数组位置
Scanner input = new Scanner(System.in);
String s1 = input.nextLine(); //从键盘读取到字符串
String s[] = s1.split(" "); //使用split函数把它切割成为数组s[]
for ( int k = 0; k<s.length ; k++ )
{
System.out.println(s[k]);
b[k] = Integer.valueOf(s[k]); //使用Integer.valueof()函数把string改成int
if ( b[k]>=max ) { maxs=k; max=b[k]; }
if ( b[k]<=min ) { mins=k; min=b[k]; }
}
int n;
n=b[0]; b[0]=max; b[maxs]=n;
n=b[s.length-1]; b[s.length-1]=min; b[mins]=n; //交换最大和最小的位置
for ( int k = 0; k<s.length ; k++ ) {
System.out.println(b[k]);
}
}
}