本文共 1442 字,大约阅读时间需要 4 分钟。
要解决这个问题,我们需要从给定的整数中提取不重复的数字,并按照从右向左的顺序排列。以下是详细的解决方案:
输入一个整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
输入描述: 输入一个整数型整数。
输出描述: 返回一个不含重复数字的新的整数,并按照从右向左的顺序排列。
示例: 输入:9876673 输出:37689
import java.util.ArrayList;import java.util.List;public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); while (input.hasNext()) { int num = input.nextInt(); System.out.println(newNumber(num)); } } public static int newNumber(int number) { String str = String.valueOf(number); List list = new ArrayList<>(); for (int i = str.length() - 1; i >= 0; i--) { char c = str.charAt(i); if (!list.contains(c)) { list.add(c); } } String ans = ""; for (Character c : list) { ans += c; } return Integer.parseInt(ans); }} String.valueOf(number)将整数转换为字符串。List<Character>来存储已经出现的字符。contains方法检查集合中是否存在当前字符。如果不存在,将其添加到集合中。Integer.parseInt(ans)将结果字符串转换为整数返回。通过这种方法,可以有效地提取不重复的数字,并按照从右向左的顺序排列,得到所需的结果。
转载地址:http://gsjwz.baihongyu.com/