Rah*_*hul 4 java android calendar
我有两个Calendar Instance变量,一个是全局声明,另一个是本地声明.现在假设我将一个日历实例分配给另一个日历实例
Calendar m_CalGlobally = Calendar.getInstance();
Calendar calLocally = m_CalGlobally;
Run Code Online (Sandbox Code Playgroud)
现在我的问题是,如果我在calLocally变量中进行任何更改,m_CalGlobally实例变量中会出现相同的更改,为什么会发生这种情况,以及分配它的方式是什么.
绝对不会工作.这样做
Calendar m_CalGlobally = Calendar.getInstance();
Calendar calLocally = (Calendar)m_CalGlobally.clone(); // Proper way to assign this.
//This will give you calender with same properties and also the changes of it wont be reflected on m_CalGlobally because assigning with equal operator make them point to same reference.
Run Code Online (Sandbox Code Playgroud)
那是因为 和m_CalGlobally
都是calLocally
对同一(相同)对象的引用。要使它们独立,您需要创建日历的另一个实例。Calendar calLocally = m_CalGlobally;
假设第二行 ( )有错字
归档时间: |
|
查看次数: |
1717 次 |
最近记录: |