Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Algorithmen » Interface schluckt Werte » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 3 Beiträge
Haevelin

Vielen Dank!!!!!
eulerscheZahl

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
@Override
public String toString()
{
	return this.Vektor;
}

public Vector add(Vector v2) {
//...
    String vekt2[] = v2.toString().split(",");
//...
}

Aber frage mich jetzt nicht, warum es bei dir nicht geklappt hat, manchmal verstehe ich Java einfach nicht verwirrt
Haevelin Interface schluckt Werte

Ich habe folgendes Programm zu Vektorrechnung.

Ich beginne mit dem Interface:


public interface Vector {

String Vektor ="";
Vector add(Vector v2);
Vector mult(double d);
double scalarProd(Vector v2);
double getNorm();
double getWinkel(Vector v2);
Vector projiziereV1aufV2(Vector v2);

}


Jetzt die Implementierung:

import java.util.Arrays;


public class VectorRn2 implements Vector{
private String Vektor = "";

public VectorRn2(String zeichen) {
Vektor=zeichen;
}



@Override
public Vector add(Vector v2) {
// TODO Auto-generated method stub
System.out.println(v2.Vektor);
String verk = "";
String vekt1[] = this.Vektor.split(",");
System.out.println(Arrays.toString(vekt1));
String vekt2[] = v2.Vektor.split(",");
System.out.println(Arrays.toString(vekt2));
int[] zwischen = new int[vekt1.length];
if (vekt1.length == vekt2.length) {
for (int i = 0; i < vekt1.length; i++) {
zwischen[i] = Integer.parseInt(vekt1[i])
+ Integer.parseInt(vekt2[i]);
verk = verk + String.valueOf(zwischen[i]) + ",";
}
verk = verk.substring(0, verk.length() - 1);
this.Vektor = verk;
return this;
} else {
throw new RuntimeException(
"Die Dimensionen der Vektoren stimmen nicht überein");

}

}

@Override
public Vector mult(double d) {
// TODO Auto-generated method stub
String vekt3[] = this.Vektor.split(",");
String verk = "";
double[] zwischen = new double[vekt3.length];
for (int i = 0; i < vekt3.length; i++) {
zwischen[i] = (Integer.parseInt(vekt3[i])) * d;
verk = verk + String.valueOf(zwischen[i]) + ",";
}
verk = verk.substring(0, verk.length() - 1);
this.Vektor = verk;
return this;

}

@Override
public double scalarProd(Vector v2) {
// TODO Auto-generated method stub
return 0;
}

@Override
public double getNorm() {
// TODO Auto-generated method stub
return 0;
}

@Override
public double getWinkel(Vector v2) {
// TODO Auto-generated method stub
return 0;
}

@Override
public Vector projiziereV1aufV2(Vector v2) {
// TODO Auto-generated method stub
return null;
}

}


Mit folgendem Testprogramm:

import java.util.Arrays;

public class TestVectorRn2 {

public static void main(String[] args) {
// TODO Auto-generated method stub
String e = "1,2,3,4";
String f = "5,6,7,8";
VectorRn2 v1 = new VectorRn2(e);

VectorRn2 v3 = new VectorRn2(f);
v1.add(v3);
System.out.println((v1));

}

}


Das Problem ist, dass zwar v1 den Vektor "1,2,3,4" zuordnet, aber v3 durch den Vektor gebildet wird, der im Interface angegeben ist. Wie kann ich v3 aber den Vektor "5,6,7,8" zuordnen?