📄 realindividual.java
字号:
// Decompiled by Jad v1.5.7f. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3)
// Source File Name: RealIndividual.java
package ci.real;
import java.io.PrintStream;
public class RealIndividual
{
public RealIndividual()
{
length = 0;
elements = null;
}
public RealIndividual(int i)
{
length = i;
elements = new double[length];
}
public RealIndividual(double ad[])
{
length = ad.length;
elements = new double[length];
for(int i = 0; i < length; i++)
elements[i] = ad[i];
}
public static void main(String args[])
{
RealIndividual realindividual = new RealIndividual(3);
System.out.println("firt real individual before initialization \n" + realindividual);
realindividual.initialization(5D);
System.out.println("first real individual after initialization \n" + realindividual);
RealIndividual realindividual1 = new RealIndividual(3);
System.out.println("second real individual before copy \n" + realindividual1);
realindividual1.copyof(realindividual);
System.out.println("second real individual after copy \n" + realindividual1);
System.out.println("first real individual after copy \n" + realindividual);
RealIndividual realindividual2 = new RealIndividual(3);
realindividual2.addTwo(realindividual, realindividual1);
System.out.println("third real individual \n" + realindividual2);
realindividual2.multiply(2D);
System.out.println("third real individual multiplied by 2\n" + realindividual2);
realindividual2.divide(2D);
System.out.println("third real individual divided by 2 \n" + realindividual2);
realindividual2.add(realindividual1);
System.out.println("third real individual add with second \n" + realindividual2);
RealIndividual realindividual3 = new RealIndividual(3);
realindividual3.substractTwo(realindividual2, realindividual1);
System.out.println("fourth equals = third - second \n" + realindividual3);
realindividual2.substract(realindividual1);
System.out.println("third equals = third -second \n" + realindividual2);
}
public void valueLimit(double d)
{
for(int i = 0; i < length; i++)
if(elements[i] > d)
elements[i] = d;
else
if(elements[i] < -d)
elements[i] = -d;
}
public int getLength()
{
return length;
}
public double elementsAt(int i)
{
if(i >= length)
{
System.out.println("index is out of the bound of the elements\n");
System.exit(0);
}
return elements[i];
}
public double[] getElements()
{
return elements;
}
public void initialization(double d)
{
for(int i = 0; i < length; i++)
elements[i] = 2D * d * Math.random() - d;
}
public void initialization(double d, double d1)
{
for(int i = 0; i < length; i++)
elements[i] = (d1 - d) * Math.random() + d;
}
public void copyof(RealIndividual realindividual)
{
if(length != realindividual.length)
{
System.out.println("cann't copy a RealIndividual object with different length\n");
System.exit(0);
return;
}
for(int i = 0; i < length; i++)
elements[i] = realindividual.elements[i];
}
public void addTwo(RealIndividual realindividual, RealIndividual realindividual1)
{
if(length != realindividual.length || length != realindividual1.length)
{
System.out.println("add two RealIndividuals with different lengths\n");
System.exit(0);
return;
}
for(int i = 0; i < length; i++)
elements[i] = realindividual.elements[i] + realindividual1.elements[i];
}
public void add(RealIndividual realindividual)
{
if(length != realindividual.length)
{
System.out.println("add two RealIndividuals with different lengths\n");
System.exit(0);
return;
}
for(int i = 0; i < length; i++)
elements[i] = elements[i] + realindividual.elements[i];
}
public void substract(RealIndividual realindividual)
{
if(length != realindividual.length)
{
System.out.println("substraction between two RealIndividuals with different lengths\n");
System.exit(0);
return;
}
for(int i = 0; i < length; i++)
elements[i] = elements[i] - realindividual.elements[i];
}
public void substractTwo(RealIndividual realindividual, RealIndividual realindividual1)
{
if(length != realindividual.length || length != realindividual1.length)
{
System.out.println("substract two RealIndividuals with different lengths\n");
System.exit(0);
return;
}
for(int i = 0; i < length; i++)
elements[i] = realindividual.elements[i] - realindividual1.elements[i];
}
public void multiply(double d)
{
for(int i = 0; i < length; i++)
elements[i] *= d;
}
public void divide(double d)
{
if(d == 0.0D)
{
System.out.println("divided by zero\n");
System.exit(0);
return;
}
for(int i = 0; i < length; i++)
elements[i] /= d;
}
public String toString()
{
String s = "length = " + length + "\n";
for(int i = 0; i < length; i++)
s = s + "elements[" + i + "]=" + elements[i] + "\n";
return s;
}
protected int length;
protected double elements[];
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -