我的任务中的问题:
一个。定义整数数组,字符数组,浮点数组。使用10的数组大小。
湾使用循环语句并使用Scanner
将值放入上面的数组中到目前为止,我有,
public class ArrayDemo {
public static void main(String[] args) {
// Define integer array, character array, float array
int[] a = new int[10];
char[] b = new char[10];
float[] c = new float[10];
// Input values using loop and Scanner
java.util.Scanner input = new java.util.Scanner(System.in);
System.out.print("Enter " + a.length + " values: ");
for(int index1 = 0; index1 < a.length; index1++)
a[index1] = input.nextInt()
System.out.println("Enter " + b.length + " values for char: ");
for(char index1 = 0; index1 < b.length; index1++)
b[index1] = input.next(".").charAt(0);
System.out.println("Enter " + c.length + " values for float: ");
for(float index1 = 0; index1 < c.length; index1++)
c[index1] = input.nextFloat();
但是,最后一行有一个错误说:不兼容的类型:从float到int的可能有损转换
答案 0 :(得分:0)
Scanner
有一个nextFloat()
,用于float
时尚nextInt()
。只需在自己的循环中调用它:
System.out.print("Enter " + c.length + " float values: ");
for(int index1 = 0; index1 < c.length; index1++) {
c[index1] = input.nextFloat();
}
不幸的是,没有nextChar()
方法,所以你必须使用接受模式的next(String)
变体来模拟它:
System.out.print("Enter " + b.length + " char values: ");
for(int index1 = 0; index1 < b.length; index1++) {
b[index1] = input.next(".").charAt(0);
}