⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 doublerange.java

📁 FuncPlotter is a combined Java application and applet for displaying two-dimensional plots of explic
💻 JAVA
字号:
/*====================================================================*\DoubleRange.javaDouble range class.------------------------------------------------------------------------This file is part of FuncPlotter, a combined Java application and appletfor plotting explicit functions in one variable.Copyright 2005-2007 Andy Morgan-Richards.FuncPlotter is free software: you can redistribute it and/or modify itunder the terms of the GNU General Public License as published by theFree Software Foundation, either version 3 of the License, or (at youroption) any later version.This program is distributed in the hope that it will be useful, butWITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNUGeneral Public License for more details.You should have received a copy of the GNU General Public License alongwith this program.  If not, see <http://www.gnu.org/licenses/>.\*====================================================================*/// PACKAGEpackage util;//----------------------------------------------------------------------// IMPORTSimport java.text.NumberFormat;//----------------------------------------------------------------------// DOUBLE RANGE CLASSpublic class DoubleRange    implements Cloneable{//////////////////////////////////////////////////////////////////////////  Constructors////////////////////////////////////////////////////////////////////////    public DoubleRange( )    {    }    //------------------------------------------------------------------    public DoubleRange( double lowerLimit,                        double upperLimit )    {        this.lowerLimit = lowerLimit;        this.upperLimit = upperLimit;    }    //------------------------------------------------------------------    public DoubleRange( DoubleRange range )    {        lowerLimit = range.lowerLimit;        upperLimit = range.upperLimit;    }    //------------------------------------------------------------------    public DoubleRange( String str )        throws IllegalArgumentException, NumberFormatException    {        String[] strs = str.split( " *, *", -1 );        if ( strs.length != 2 )            throw new IllegalArgumentException( );        lowerLimit = Double.parseDouble( strs[0] );        upperLimit = Double.parseDouble( strs[1] );    }    //------------------------------------------------------------------//////////////////////////////////////////////////////////////////////////  Instance methods : overriding methods////////////////////////////////////////////////////////////////////////    public Object clone( )    {        Object range = null;        try        {            range = super.clone( );        }        catch ( CloneNotSupportedException e )        {            e.printStackTrace( );        }        return range;    }    //------------------------------------------------------------------    public boolean equals( Object obj )    {        if ( obj instanceof DoubleRange )        {            DoubleRange range = (DoubleRange)obj;            return ( (lowerLimit == range.lowerLimit) && (upperLimit == range.upperLimit) );        }        return false;    }    //------------------------------------------------------------------    public int hashCode( )    {        long bits = Double.doubleToLongBits( lowerLimit );        bits ^= Double.doubleToLongBits( upperLimit ) * 31;        return ( (int)bits ^ (int)(bits >> 32) );    }    //------------------------------------------------------------------    public String toString( )    {        return new String( lowerLimit + ", " + upperLimit );    }    //------------------------------------------------------------------//////////////////////////////////////////////////////////////////////////  Instance methods////////////////////////////////////////////////////////////////////////    public String toString( NumberFormat format )    {        return new String( format.format( lowerLimit ) + ", " + format.format( upperLimit ) );    }    //------------------------------------------------------------------    public double getInterval( )    {        return ( upperLimit - lowerLimit );    }    //------------------------------------------------------------------    public double getValue( double fraction )    {        return ( lowerLimit + (upperLimit - lowerLimit) * fraction );    }    //------------------------------------------------------------------    public boolean contains( double value )    {        return ( (value >= lowerLimit) && (value <= upperLimit) );    }    //------------------------------------------------------------------    public double nearestValueWithin( double value )    {        return ( Math.min( Math.max( lowerLimit, value ), upperLimit ) );    }    //------------------------------------------------------------------//////////////////////////////////////////////////////////////////////////  Instance variables////////////////////////////////////////////////////////////////////////    public  double  lowerLimit;    public  double  upperLimit;}//----------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -