`
flm_llx
  • 浏览: 62547 次
  • 性别: Icon_minigender_1
  • 来自: 应县
社区版块
存档分类
最新评论

ARRAYS

    博客分类:
  • java
阅读更多
package untitled4;
import java.util.*;
class compare implements Comparator
{
    public int compare(Object o1,Object o2)
    { 
        int i=((Person)o1).getFirstName().compareTo(((Person)o2).getFirstName());
        return (i!=0?i:((Person)o1).getLastName().compareTo(((Person)o2).getLastName()));
    }
}
class Person implements Comparable
{   private String firstName;
    private String lastName;
    public String getFirstName()
    {
      return firstName;
    }
    public String getLastName()
    {      return lastName;
    }
    public Person(String f,String l)
    {
       firstName=f;
       lastName=l;
    }
    public int compareTo(Object o)
    {  Person p=(Person)o;
        int l=firstName.compareTo(p.firstName);
       return (l!=0?l:(lastName.compareTo(p.lastName)));
    }
    public String toString()
    {
        return firstName+" "+lastName;
    }
}
public class ArrayTest {
    public ArrayTest() {
    }
public static void main(String args[])
    {
        int a[];
        a = new int[5];
        Arrays.fill(a, 5);  //用5填充数组
        for (int i = 0; i < a.length; i++) {
            System.out.println(a);
        }
        int b[] = {10, 3, 5, 6, 8, 9};
        Arrays.sort(b);
        for (int i = 0; i < b.length; i++) {
            System.out.println(b);
        }
   
        Person p[] = {
                     new Person("John", "Lennon"),
                     new Person("Karl", "Marx"),
                     new Person("Groucho", "Marx"),
                     new Person("Oscar", "Grouch")
        };
        for (int i = 0; i < p.length; i++) {
            System.out.println(p);
        }
   
        //Arrays.sort(p);
        Arrays.sort(p, new compare());
        for (int i = 0; i < p.length; i++) {
           System.out.println(p);
       }
        int s = Arrays.binarySearch(p, new Person("Groucho", "Marx"), new compare());
        System.out.println(s);
        Person person[];
        person = new Person[4];
        System.arraycopy(p, 0, person, 0, p.length);
        for (int c= 0; c < person.length; c++)
        {
            System.out.println(person[c]);
   
        }
    }
}
当用Arrays的sort方法时,需要排序的数组必须实现Comparable借口.或者实现Comparator接口
Arrays的fill方法是用一个基本类型或者一个对象填充数组.
当调用binarySearch()时如果是调用sort(Objiec a[],Comparator a)时,,应调用相应的binarySearch(Object a[],Object value,Comparator)方法.
equals()方法用于比较非基本类型数组时,调用他们的equals方法..比如
int a[]={5,4,3,2,1};
int c[]={5,4,3,2,1};  基本类型比较他们的值,
System.out.println(Arrays.equals(a,c));  TRUE
Integer a[]={new Integer(1),new Integer(2),new Integer(3)};
Integer b[]={new Integer(1),new Integer(2),new Integer(3)};
System.out.println(Arrays.equals(a,b));   调用Integer.equals()方法
对于没有覆盖Object equals方法的对象数组,他们之间比较的是对象的引用.
System.arraycopy()方法对与基本类型来说只是复制他们的值.而对于非基本类型时他们复制引用
  person person[]={new person("guo",20),new person("cher",21)};
         person per[]={new person("guo",20),new person("cher",21)};
       person []p=new person[2];
       System.arraycopy(person,0,p,0,person.length);
       System.out.println(person==p);    //输出  false
       person[1].setName("hao");
       System.out.println(person[1].equals(p[1]));  输出 true
       System.out.println(Arrays.equals(person,p));   输出 true
        System.out.println(Arrays.equals(person,per));  输出 false
posted @ 2005-11-23 17:22 活在JAVA岛的日子 阅读(114) | 评论 (0) | 编辑 收藏

2005年11月16日
对多态的理解
如果子类继承了父类的方法(未重写),则运行时系统调用父类的方法。
在例3-6中,父类对象a引用的是子类的实例,所以,java运行时调用子类B的callme方法。
importjava.io.*;
  classA{
     voidcallme(){
      System.out.println("InsideA'scallme()method");
     }
  }
  classBextendsA{
     voidcallme(){
      System.out.println("InsideB'scallme()Method");
     }
  }
  publicclassDispatch{
     publicstaticvoidmain(Stringargs[]){
      Aa=newB();
      a.callme();
     }
  }

◇方法重写时应遵循的原则:
  1)改写后的方法不能比被重写的方法有更严格的访问权限(可以相同)。
  2)改写后的方法不能比重写的方法产生更多的例外。
分享到:
评论

相关推荐

    System.arraycopy和Arrays.copyOf

    `System.arraycopy` 和 `Arrays.copyOf` 都是Java中用于复制数组的方法,但它们在使用和处理异常情况上有所不同。这两个方法在处理数组复制时,提供了便利和效率,但各有其适用场景。 `System.arraycopy` 是一个...

    PHP.Arrays.in.PHP.7

    Gain an in-depth understanding of PHP 7 arrays. After a quick overview of PHP 7, each chapter concentrates on single, multi-dimensional, associative, and object arrays. PHP Arrays is a first of its ...

    Collection与Collections,Array与Arrays的区别

    Collection与Collections,Array与Arrays的区别 Collection与Collections的区别: Collection是一个接口,位于java.util包下,是各种集合结构的父接口。它提供了最基本的集合操作,如add、remove、contains等。...

    Antenna Arrays and Automotive Applications

    radar antenna arrays, and smart antenna arrays for automatic cruise control applications provide increased safe travelling for vehicle passengers. Vehicle localization techniques based on the antenna ...

    android多语言strings.xml,arrays.xml转xls与xls转xml脚本程序

    `strings.xml`和`arrays.xml`文件是Android资源文件中的核心组件,用于存储应用程序中的文本和数组数据。这些文件通常包含不同语言的字符串资源,以便在不同地区展示相应的本地化内容。 本话题涉及一个脚本程序,它...

    你清楚Arrays.binarySearch()方法的返回值吗?

    在Java编程语言中,`Arrays`类是Java.util包下的一个非常重要的工具类,它提供了大量用于操作数组的静态方法,其中包括我们今天要讨论的`binarySearch()`方法。`Arrays.binarySearch()`方法允许我们在有序数组中查找...

    Protein.Arrays,.Biochips,.and.Proteomics.-.Joanna.S.Albala

    #### 蛋白质阵列(Protein Arrays) 蛋白质阵列是一种高通量技术,用于检测生物样本中的蛋白质种类及其相对丰度。这种技术通过将成千上万种不同的蛋白质固定在一个固体基质上(如玻璃片或尼龙膜),然后用标记的...

    Finite Antenna Arrays and FSS.rar )

    在《Finite Antenna Arrays and FSS》这份资料中,读者可以期待深入学习以下主题: 1. 天线阵列的基本原理:包括阵列因子、方向图计算、阵列配置(线阵、面阵、随机阵列等)。 2. 阵列优化设计:讨论如何通过最优化...

    Electronically_Scanned_Arrays

    ### 相控阵天线(Electronically Scanned Arrays)详解 #### 一、引言与历史背景 相控阵天线(Electronically Scanned Arrays,ESA),是一种能够通过电子方式实现波束扫描和定位的天线系统,无需机械转动即可完成...

    Microphone Arrays : A Tutorial

    ### Microphone Arrays:一个教程 #### 标题与描述解读 标题“Microphone Arrays : A Tutorial”明确指出了本文档的主要内容是关于麦克风阵列的技术教程。麦克风阵列是一种由多个麦克风组成的空间配置,用于捕捉...

    PHP Arrays Single, Multi-dimensional, Associative and Object Arrays in 无水印原版pdf

    PHP Arrays Single, Multi-dimensional, Associative and Object Arrays in PHP 7 英文无水印原版pdf pdf所有页面使用FoxitReader、PDF-XChangeViewer、SumatraPDF和Firefox测试都可以打开 本资源转载自网络,如...

    [PDF] Digital Signal Processing with Field Programmable Gate Arrays (part 1 of 4)

    《Digital Signal Processing with Field Programmable Gate Arrays》扫描版

    Java中Arrays实用方法

    /** *Arrays提供数组操作的一系列实用方法 *1输出 *2排序 *3二分查找 *4复制 *5扩容 */

    Introduction to Parallel Algorithms - Arrays Trees Hypercubes

    The contents itself is organized in three chapters according to the network architecture: arrays and trees for Chapter 1 (117 pages), meshes of trees for Chapter 2 (117 pages), and hypercubes and ...

    Digital Signal processing with Field Programmable Gate Arrays

    《Digital Signal processing with Field Programmable Gate Arrays》是一本非常有价值的教材,它不仅涵盖了DSP的基本理论,还详细介绍了如何使用FPGA来实现各种DSP功能。对于学习和从事DSP领域的专业人士来说,这...

    Digital Signal Processing with Field Programmable Gate Arrays

    - **Digital Signal Processing with Field Programmable Gate Arrays**:此标题明确指出本书的主要内容是关于如何使用现场可编程门阵列(Field Programmable Gate Arrays,简称FPGA)进行数字信号处理(Digital ...

    图片url地址arrays.xml

    网络图片地址url集合arrays.xml文件

    Electronically Scanned Arrays_MATLAB Modeling and Simulation_2012.rar

    1. **电子扫描阵列(Electronically Scanned Arrays, ESA)**: - ESA是一种现代雷达系统,其天线单元能够通过电子方式改变发射或接收信号的方向,而无需机械移动。 - 主要类型包括相控阵和电扫阵列,其中相控阵...

Global site tag (gtag.js) - Google Analytics