Edge.java(インターフェース)しか入手方法
public interface Edge {
/**
* get the first node of the Edge.
* @return the first Node.
*/
public int getFirstNode();
/**
* get the second node of the Edge.
* @return the second Node.
*/
public int getSecondNode();
}
EdgeImpl.java(実装)
public class EdgeImpl implements Edge {
private int node1;
private int node2;
public EdgeImpl(int node1, int node2) {
this.node1 = node1;
this.node2 = node2;
}
@Override
public int getFirstNode() {
// TODO Auto-generated method stub
return node1;
}
@Override
public int getSecondNode() {
// TODO Auto-generated method stub
return node2;
}
}
first.java(私は助けを必要とどのような)
import java.util.ArrayList;
import java.util.List;
public class first {
public static void main(String[] args) {
List<Edge> graph = new ArrayList<>();
Edge a = new EdgeImpl(1, 2);
Edge b = new EdgeImpl(3, 4);
graph.add(a);
graph.add(b);
}
public static void reverse(List<Edge> graph) {
int count = 0;
while(count < graph.size()) {
int temp1 = graph.get(count).getFirstNode();
int temp2 = graph.get(count).getSecondNode();
graph.get(count).getFirstNode() = temp2;
graph.get(count).getSecondNode() = temp1;
count = count + 1;
}
}
}
を使用して逆転しました
エッジインターフェイスはちょうど2つのint値で、2つのゲッターがあります。
みましょう私たちはこのようなものですリスト持っていると言う[EdgeImpl(1,2)、EdgeImpl(3,4)]
私は[EdgeImpl(2,1)に記載されていることを確認したい、EdgeImpl( 4,3)]。逆の方法で何をするのでしょうか。
EXCEPT
私はsetメソッドを追加カントので、私は、インターフェイスも実装を編集カント、それはIN-に配置する必要があります。
getメソッドを使用してスワップできないため、試行が失敗します。私は両者をどうやって交換するのか非常に混乱しています
何か助けてください?
設定メソッドがなく、実装を変更することもできません。私は残っている方法が反映されていると思います。 –
あなたの割り当てが 'List'を逆にする場合、' Edge'はどのように関連していますか?少なくともそれはあなたがそれを説明した方法です。私は先生に説明を求めることを勧めます。 – Kayaman