?? datenmodellimpl.java
字號:
package model;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import java.lang.Math;
public class DatenmodellImpl implements Datenmodell{
private List<Double> values;
private List<ValueChangeListener> listeners;
public DatenmodellImpl(){
values=new LinkedList<Double>();
listeners=new LinkedList<ValueChangeListener>();
}
public void addValue(double value) {
values.add(value);
fireValuesAdded(Collections.singletonList(value));
}
public void deletValue(int index) {
Double d=values.get(index);
values.remove(index);
fireValuesRemoved(Collections.singletonList(d));
}
public double getMax() {
double max=0;
for(int i=0;i<values.size();i++){
if(max<values.get(i))
max=values.get(i);
}
return max;
}
public double getMean() {
double mean=0;
for(int i=0;i<values.size();i++){
mean=mean+values.get(i);
}
return mean/values.size();
}
public double getMin() {
double min=0;
if(values.size()!=0)
min=values.get(0);
for(int i=0;i<values.size();i++){
if(min>values.get(i))
min=values.get(i);
}
return min;
}
public int getSize() {
return values.size();
}
public double getStdDeviation() {
double std,sum=0;
for(int i=0;i<values.size();i++)
sum=sum+(values.get(i)-getMean())*(values.get(i)-getMean());
std=Math.sqrt(sum/values.size());
return std;
}
public double getValue(int index) {
return values.get(index);
}
public void addValuesChangeListener(ValueChangeListener listener) {
listeners.add(listener);
}
public void removeValuesChangeListener(ValueChangeListener listener) {
listeners.remove(listener);
}
private void fireValuesAdded(List<Double> values) {
ValueEvent evt = new ValueEvent(this, values);
for (ValueChangeListener listener : listeners) {
listener.valuesAdded(evt);
}
}
private void fireValuesRemoved(List<Double> values) {
ValueEvent evt = new ValueEvent(this, values);
for (ValueChangeListener listener : listeners) {
listener.valuesRemoved(evt);
}
}
/**
* Notifies all listeners that the list has changed.
*/
private void fireValuesChanged(List<Double> values) {
ValueEvent evt = new ValueEvent(this, values);
for (ValueChangeListener listener : listeners) {
listener.valuesChanged(evt);
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -