正整数倒排java pta
时间: 2024-09-30 14:01:23 浏览: 10
在Java中,正整数的倒序排列通常指的是将一个整数数组按照降序排序。你可以使用Arrays类提供的sort()方法,配合自定义比较器Comparator来实现这个功能。以下是一个简单的例子:
```java
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] numbers = {5, 2, 8, 1, 9}; // 你要排序的正整数数组
Arrays.sort(numbers, new Comparator<Integer>() {
@Override
public int compare(Integer a, Integer b) {
return b - a; // 按照从大到小的顺序比较
}
});
System.out.println("倒序后的数组:");
for (int num : numbers) {
System.out.print(num + " ");
}
}
}
```
在这个代码中,`compare()`方法返回的是两个元素之间的比较结果,如果大于0,则表示第一个元素应该位于第二个元素之后,即按降序排列。
相关问题
正整数倒排。 给定一个整数,把它的各位数字倒排过来形成一个新的整数java
正整数倒排是指将一个整数的每一位数字按照从右向左的顺序反转过来得到新的数字。在Java中,你可以通过字符串操作和数组处理来实现这个功能。这里有一个简单的步骤:
1. 将整数转换成字符串,因为Java中的整数是不可变的,不能直接修改其位数。
2. 遍历字符串,将每个字符存储到一个字符数组中。
3. 再次创建一个新的字符串,将字符数组中的字符按照相反的顺序连接起来。
4. 最后,将新字符串再转换回整数。
以下是Java代码示例:
```java
public int reverseInteger(int x) {
String str = String.valueOf(x);
char[] chars = str.toCharArray();
int n = chars.length;
for (int i = 0; i < n / 2; i++) {
char temp = chars[i];
chars[i] = chars[n - i - 1];
chars[n - i - 1] = temp;
}
return Integer.parseInt(new String(chars));
}
```
非正整数 检验 java
以下是两种Java判断字符串是否为非正整数的方法:
1. 遍历字符串的每一个字符,判断是否为数字(非正整数的定义是不全为数字)。如果存在非数字字符,则返回false,否则返回true。
```java
private boolean isNonPositiveInteger(String s) {
for (int i = 0; i < s.length(); i++) {
char ch = s.charAt(i);
if (!(ch >= '0' && ch <= '9')) {
return false;
}
}
return true;
}
```
2. 使用正则表达式判断字符串是否全为数字。如果字符串不为空且不为空字符串,则使用正则表达式"^[0-9]*$"进行匹配,如果匹配成功则返回true,否则返回false。
```java
private boolean isNonPositiveInteger(String s) {
if (s != null && !"".equals(s.trim())) {
return s.matches("^[0-9]*$");
} else {
return false;
}
}
```