我有像3.2和的浮点数1.6.
我需要将数字分成整数和小数部分.例如,值3.2将被分成两个数字,即3和0.2
获取整数部分很简单:
n = Math.floor(n);
Run Code Online (Sandbox Code Playgroud)
但是我无法获得小数部分.我试过这个:
remainer = n % 2; //obtem a parte decimal do rating
Run Code Online (Sandbox Code Playgroud)
但它并不总是正常工作.
前面的代码具有以下输出:
n = 3.1 => remainer = 1.1
Run Code Online (Sandbox Code Playgroud)
我在这里缺少什么?
我尝试将一个整数转换为数组,例如1234到 int[] arr = {1,2,3,4};
我写了一个函数
public static void convertInt2Array(int guess) {
String temp = Integer.toString(guess);
String temp2;
int temp3;
int [] newGuess = new int[temp.length()];
for(int i=0;i<=temp.length();i++) {
if (i!=temp.length()) {
temp2 = temp.substring(i, i+1);
} else {
temp2 = temp.substring(i);
//System.out.println(i);
}
temp3 = Integer.parseInt(temp2);
newGuess[i] = temp3;
}
for(int i=0;i<=newGuess.length;i++) {
System.out.println(newGuess[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
但抛出异常:
Exception in thread "main" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:504)
at java.lang.Integer.parseInt(Integer.java:527)
at q4.test.convertInt2Array(test.java:28)
at q4.test.main(test.java:14)
Java Result: 1 …Run Code Online (Sandbox Code Playgroud)