1、课后作业:随机生成10个数,填充一个数组,然后用消息框显示数组内容,接着计算数组元素的和,将结果也显示在消息框中。
设计思路:先申请一个int型数组空间来存放随机生成的十个数,定义一个int型sum初始化为0来计算和。用Random类来做一个随机数生成器,然后用for循环产生十个随机数,分别赋值给数组的十个数,同时打印出每一个随机数,最后用消息框打印出十个随机数和求和结果。
源代码:
import java.util.Random;
import javax.swing.JOptionPane;
public class Plus { public static void main(String args[])
{
int[] a = new int[10];
String output="随机产生的十个数:";
int sum=0; //十个随机数的和
Random random=new Random();
for(int i=0;i<10;i++)
{
int ran=random.nextInt(1000000);
output+=' ';
a[i]=ran; //将产生的随机数循环给数组
output+=" "+ran; //打印出每一个随机数
sum=sum+a[i];
}
output+=' '+"十个随机数相加的和为:";
output+=sum;
JOptionPane.showMessageDialog(null, output, "十个随机数相加的结果为", JOptionPane.INFORMATION_MESSAGE );
}
}
结果截图:
动手动脑:
原因:java的Object数组不能转换成为String[]数组,说明要转换的数组它本身是Object类型的,但是要把它转换为String类的数组,这是错误的。在遇到类型转换出错的时候,首先要观察被转换的对象的原来类型是什么,这个就需要首先把它转换成为自己本来的类型的对象,然后根据这个对象再去操作里面的元素,再一次的转换类型,而且有的时候被分析的对象可能有多层的包装,在转换的过程中需要多层的解开,一层一层的剥开它本来的类型,直到获取到对象的最终类型,然后把不能再分解的类型转换成为自己目标类型的对象。