一、题目:随机生成10个数,填充一个数组,然后用消息框显示数组内容,接着计算数组元素的和,将结果也显示在消息框中。
设计思路:先定义导入显示消息框的包中的类JOptionPane,然后定义声明数组并分配空间,接着生成数组中10个随机数,最后数组求和并输出。
源代码:
package Demo;
import javax.swing.JOptionPane;
public class RandArraySum {
public static void main(String[] args) {
int[] array=new int[10]; //定义一个数组,分配长度为10。
int result=0; //用result表示数组元素的和,初值为0
String output=""; //定义一个空串
//随机生成一个100以内的数,填充数组。
for(int i=0;i<array.length;i++)
array[i]=(int)(Math.random()*100);
//将数组元素输出。
output+="随机生成的十个数是:"+"\n";
for(int i=0;i<array.length;i++)
output+=array[i]+" ";
output+="\n";
//将数组元素相加。
for(int i=0;i<array.length;i++)
result+=array[i];
output+="十个数相加等于:"+"\n"+result;
//以消息框的形式输出。
JOptionPane.showMessageDialog(null, output, "输出",JOptionPane.INFORMATION_MESSAGE);
}
}
截图:
二、随堂问题:
“Ljava.lang.Object;@ba8a1dc”问题运行结果截图:
原因:
java的Object数组不能转换成为String[]数组,说明要转换的数组它本身是Object类型的,但是要把它转换为String类的数组,这是错误的。在遇到类型转换出错的时候,首先要观察被转换的对象的原来类型是什么,这个就需要首先把它转换成为自己本来的类型的对象,然后根据这个对象再去操作里面的元素,再一次的转换类型,而且有的时候被分析的对象可能有多层的包装,在转换的过程中需要多层的解开,一层一层的剥开它本来的类型,直到获取到对象的最终类型,然后把不能再分解的类型转换成为自己目标类型的对象。
随机数组与“Ljava.lang.Object;@ba8a1dc” 问题
原文:http://www.cnblogs.com/DHYgg/p/4931970.html