package com.test.util;
import java.util.Scanner;
/**
* @ClassName: test
* @Description:
* @Author
* @Date 2021/10/28
* @Version 1.0
*/
public class Test
{
public static void main(String[] args) {
System.out.println("请输入6位数字!按回车结束!");
Scanner sc = new Scanner(System.in);
String input = sc.next();
//不是6位数字就死循环 提示重新输入
input = isSixNumber(input);
String part1 = input.substring(0, 3);
String part2 = input.substring(3,input.length());
//用 Integer.parseInt() 进行比较时 不需要 考虑 010,004 这种情况
//010会变成10;004会变成4
if(Integer.parseInt(part1) > Integer.parseInt(part2)){
System.out.println("结果为:" +part1+part2 );
} else {
System.out.println("结果为:" +part2+part1 );
}
}
//递归
private static String isSixNumber(String input) {
Scanner sc;
if(input.length()!= 6){
System.out.println("只能输入6位数字!请重新输入!");
sc = new Scanner(System.in);
input = sc.next();
isSixNumber(input);
}
return input;
}
}
public int change(int num){
int front = num / 1000; //前三位
int back = num % 1000;//后三位
if(front >= back){
//前三位大于后三位不转换
return num;
} else {
//转换
return back * 1000 + front;
}
}
两种思路:
emmm. 楼主真懒,问题的内容是截图,我这里都写完答案了,图片才刷新出来。
既然已经给定了是六位数了,就直接整除+取余来提取前三位和后三位吧。
@饶小乖 的答案最简单了。