| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2118 人关注过本帖
标题:数组输出乱码,@.....
只看楼主 加入收藏
渐渐鱼
Rank: 1
等 级:新手上路
帖 子:80
专家分:0
注 册:2018-5-11
结帖率:90%
收藏
 问题点数:0 回复次数:4 
数组输出乱码,@.....
程序代码:
import java.util.*;
public class A{
public static void main(String args[]){
int arrays[]= new int[10];

        //用fill方法给数组赋值Array.fill(数组名,fromindex(包括),toindex(不包括),value)
        Arrays.fill(arrays,5);

        Arrays.fill(arrays,1,3,7);//arrays[1],arrays[2]赋值为7

        System.out.println("赋值后数组:");

        System.out.println(arrays);

        //用sort方法排序(默认升序)

        Arrays.sort(arrays);

        System.out.println("排序后数组");

        System.out.println(arrays);

        //判断数组是否相等

        int krrays[]=new int [10];

        Arrays.fill(krrays,9);

        System.out.println(Arrays.equals(arrays,krrays));

        //查找数组元素

        System.out.println("返回数组元素的位置");

        System.out.println(Arrays.binarySearch(arrays,5));
}}
..


运行结果:赋值后数组:
[I@6b143ee9
排序后数组
[I@6b143ee9
false
返回数组元素的位置
4
搜索更多相关主题的帖子: 数组 int System out println 
2018-06-15 20:40
Gband
Rank: 1
等 级:新手上路
帖 子:41
专家分:7
注 册:2017-10-13
收藏
得分:0 
arrays储存的是一个int[]类的地址,你让程序输出的是arrays的地址,并非他的元素
2018-06-15 21:57
疯狂的小a
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:39
帖 子:423
专家分:1871
注 册:2018-2-6
收藏
得分:0 
程序代码:
import java.util.*;
public class A{
public static void main(String args[]){
int arrays[]= new int[10];

        //用fill方法给数组赋值Array.fill(数组名,fromindex(包括),toindex(不包括),value)
        Arrays.fill(arrays,5);

        Arrays.fill(arrays,1,3,7);//arrays[1],arrays[2]赋值为7

        System.out.println("赋值后数组地址值:");

        System.out.println(arrays);
        
        //打印数组
        for(int i=0;i<arrays.length;i++){
            if(i==0){
                System.out.print("[ "+arrays[i]);
            }else if(i!=0 && i!=arrays.length-1){
                System.out.print(" "+arrays[i]);
            }else{
                System.out.println(" "+arrays[i]+" ]");
            }
        }

        //用sort方法排序(默认升序)

        Arrays.sort(arrays);

        System.out.println("排序后数组地址值");

        System.out.println(arrays);
        
        //打印排序后数组
        for(int i=0;i<arrays.length;i++){
            if(i==0){
                System.out.print("[ "+arrays[i]);
            }else if(i!=0 && i!=arrays.length-1){
                System.out.print(" "+arrays[i]);
            }else{
                System.out.println(" "+arrays[i]+" ]");
            }
        }

        //判断数组是否相等

        int krrays[]=new int [10];

        Arrays.fill(krrays,9);

        System.out.println(Arrays.equals(arrays,krrays));

        //查找数组元素

        System.out.println("返回数组元素的位置");

        System.out.println(Arrays.binarySearch(arrays,5));
}}

图片附件: 游客没有浏览图片的权限,请 登录注册
可以看出排序后数组在内存中地址值没有改变

假如人生没有梦想,和咸鱼有什么区别!
2018-06-16 10:35
渐渐鱼
Rank: 1
等 级:新手上路
帖 子:80
专家分:0
注 册:2018-5-11
收藏
得分:0 
回复 2楼 Gband
修改后可以了,谢啦
2018-06-16 12:31
快速回复:数组输出乱码,@.....
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.043859 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved