首页 > 编程语言 > 详细

随机数组与“Ljava.lang.Object;@ba8a1dc” 问题

时间:2015-11-03 00:40:17      阅读:242      评论:0      收藏:0      [点我收藏+]

一、题目:随机生成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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!