home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1995 November / PCWK1195.iso / inne / win95 / sieciowe / hotja32.lzh / hotjava / classsrc / java / lang / long.java < prev    next >
Text File  |  1995-08-11  |  3KB  |  116 lines

  1. /*
  2.  * @(#)Long.java    1.14 95/05/18  
  3.  *
  4.  * Copyright (c) 1994 Sun Microsystems, Inc. All Rights Reserved.
  5.  *
  6.  * Permission to use, copy, modify, and distribute this software
  7.  * and its documentation for NON-COMMERCIAL purposes and without
  8.  * fee is hereby granted provided that this copyright notice
  9.  * appears in all copies. Please refer to the file "copyright.html"
  10.  * for further important copyright and licensing information.
  11.  *
  12.  * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
  13.  * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
  14.  * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
  15.  * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
  16.  * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
  17.  * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
  18.  */
  19.  
  20. package java.lang;
  21.  
  22. /**
  23.  * The Long class is a wrapper for long values.
  24.  * @version     1.14, 18 May 1995
  25.  * @author    Lee Boynton
  26.  * @author    Arthur van Hoff
  27.  */
  28. public final
  29. class Long extends Number {
  30.     /**
  31.      * The minimum value a long can have.
  32.      */
  33.     public static final long MIN_VALUE = 0x8000000000000000;
  34.  
  35.     /**
  36.      * The maximum value a long can have.
  37.      */
  38.     public static final long MAX_VALUE = 0x7fffffffffffffff;
  39.  
  40.     /**
  41.      * The value of the long.
  42.      */
  43.     private long value;
  44.  
  45.     /**
  46.      * Constructs a Long object with the specified value.
  47.      * @param value    the value of the long
  48.      */
  49.     public Long(long value) {
  50.     this.value = value;
  51.     }
  52.  
  53.     /**
  54.      * Returns the value of the Long as an int.
  55.      */
  56.     public int intValue() {
  57.     return (int)value;
  58.     }
  59.  
  60.     /**
  61.      * Returns the value of the Long as a long.
  62.      */
  63.     public long longValue() {
  64.     return (long)value;
  65.     }
  66.  
  67.     /**
  68.      * Returns the value of the Long as a float.
  69.      */
  70.     public float floatValue() {
  71.     return (float)value;
  72.     }
  73.  
  74.     /**
  75.      * Returns the value of the Long as a double.
  76.      */
  77.     public double doubleValue() {
  78.     return (double)value;
  79.     }
  80.  
  81.     /**
  82.      * Returns a string object representing this integer's value.
  83.      */
  84.     public String toString() {
  85.     return String.valueOf(value);
  86.     }
  87.  
  88.     /**
  89.      * Computes a hashcode for this long.
  90.      */
  91.     public int hashCode() {
  92.     return (int)value;
  93.     }
  94.  
  95.     /**
  96.      * Compares this object against some other object.
  97.      * @param obj        the object to compare with
  98.      * @return         true if the object is the same
  99.      */
  100.     public boolean equals(Object obj) {
  101.     if ((obj != null) && (obj instanceof Long)) {
  102.         return value == ((Long)obj).longValue();
  103.     }
  104.     return false;
  105.     }
  106.  
  107.     /**
  108.      * Returns the long that the string represents.
  109.      * @param s        the string to be parsed
  110.      * @return         the value of the string
  111.      * @exception NumberFormatException The string cannot be parsed.
  112.      */
  113.     public static native Long valueOf(String s);
  114. }
  115.  
  116.