java含两位数字字符串转换为数组
时间: 2024-12-16 17:22:30 浏览: 3
在Java中,如果你有一个只包含两个数字字符的字符串,想要将其转换成一个整数数组,你可以这样做:
首先,假设这个字符串始终是两位的,可以创建一个长度为2的字符数组来存储每一位。然后,遍历字符串,将每个字符添加到数组对应的位置。最后,你可以将这两个字符解析为一个十进制的整数。
这是一个简单的示例:
```java
public int[] stringToTwoDigitArray(String str) {
if (str.length() != 2) {
throw new IllegalArgumentException("String must be of length 2");
}
char[] chars = {'0', '0'};
chars[0] = str.charAt(0);
chars[1] = str.charAt(1);
// 将字符数组转换为整数数组
int[] array = new int[2];
array[0] = Integer.parseInt(new String(chars));
array[1] = array[0]; // 由于这里是一个两位数,第二个元素通常是第一个的一半
return array;
}
```
相关问题
java含两位数字字符串以空格为分隔符转换为数组
在Java中,如果你有一个只包含两位数字以空格分隔的字符串,比如 "12 34 56", 要将其转换为整数数组,你可以这样做:
```java
String input = "12 34 56";
String[] numbers = input.split(" "); // 使用split()函数按照空格分割字符串
int[] intArray = new int[numbers.length];
for (int i = 0; i < numbers.length; i++) {
try {
intArray[i] = Integer.parseInt(numbers[i]); // 将每个字符串元素转换为整数
} catch (NumberFormatException e) {
System.out.println("Invalid number found in the string: " + numbers[i]);
}
}
// Now, intArray contains [12, 34, 56]
```
这个过程首先将字符串按空格切分成一个字符串数组,然后逐个将这些字符串转换成整数并存储到`intArray`中。如果遇到非数字字符,`Integer.parseInt()`会抛出`NumberFormatException`,在这种情况下你需要捕获异常。
java实现吸血鬼数字
"吸血鬼数"是一个有趣的数学概念,它源于匈牙利数学家Paul Erdős的一道问题。在Java中实现吸血鬼数,通常是指两个正整数,它们相加得到的结果的每一位数码都是这两个数各自数码的和。例如,69 + 96 = 165,因为1+6=7,6+9=15,1+5=6。
以下是一个简单的Java方法,用于判断两个数是否构成吸血鬼数:
```java
public class VampireNumber {
public static boolean isVampire(int num1, int num2) {
String strNum1 = String.valueOf(num1);
String strNum2 = String.valueOf(num2);
int[] digits1 = new int[strNum1.length()];
int[] digits2 = new int[strNum2.length()];
// 将字符串转换为数组,存储每一位数字
for (int i = 0; i < strNum1.length(); i++) {
digits1[i] = strNum1.charAt(i) - '0';
}
for (int i = 0; i < strNum2.length(); i++) {
digits2[i] = strNum2.charAt(i) - '0';
}
// 计算两数之和的每一位并与两个输入数字的相应位比较
int sum = 0;
for (int i = 0; i < Math.max(strNum1.length(), strNum2.length()); i++) {
int digitSum = digits1[i] + digits2[i];
if (i < strNum1.length()) {
sum += digits1[i];
}
if (i < strNum2.length()) {
sum += digits2[i];
}
if (sum / 10 != digitSum) { // 如果当前位的和不是结果的对应位,则不是吸血鬼数
return false;
}
sum %= 10;
}
return true;
}
// 示例:
public static void main(String[] args) {
System.out.println(isVampire(69, 96)); // 输出:true
}
}
```
阅读全文