c++ Vs java
c++集合放的是赋值的数据,java集合放的是引用
#include <iostream>
#include <vector>
using namespace std;
class Node{
public:
int data;
Node(int _data){
data = _data;
}
};
int main(){
vector<Node> vec;
Node n1(2);
vec.emplace_back(n1);
vec[0].data = 3;
cout << n1.data << endl; // 2 原来不变
return 0;
}
package com.kcl;
import java.util.ArrayList;
import java.util.List;
class Node{
public int data;
Node(int data){
this.data = data;
}
}
public class Test {
public static void main(String[] args) {
Node n1 = new Node(2);
List<Node> list = new ArrayList<>();
list.add(n1);
list.get(0).data = 3;
System.out.println(n1.data); // 3
}
}