最佳做法是不公开Object(Entity)的内部引用.因此,如果一个Object有一个类型的字段,java.util.Date那么例如该字段的getter应该不返回原始日期而是它的副本.
但是对于java.util.Date,有两种常见的方法来创建该副本:
(Date) originalDate.clone()new Date(originalDate.getTime()) 我的问题是,哪种方式更好,为什么?
有没有办法轻松克隆Eloquent对象,包括它的所有关系?
例如,如果我有这些表:
users ( id, name, email )
roles ( id, name )
user_roles ( user_id, role_id )
Run Code Online (Sandbox Code Playgroud)
除了在users表中创建一个新行,除了所有列都相同之外 id,它还应该在user_roles表中创建一个新行,为新用户分配相同的角色.
像这样的东西:
$user = User::find(1);
$new_user = $user->clone();
Run Code Online (Sandbox Code Playgroud)
用户模型的位置
class User extends Eloquent {
public function roles() {
return $this->hasMany('Role', 'user_roles');
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个包含少数相关项目的Mercurial存储库.我想分支其中一个项目,以便在其他地方开展工作.
克隆只是存储库的一部分,并且这是实现这一目标的正确方法吗?
这是我的代码:
var a=[1,2,3]
b=$.clone(a)
alert(b)
Run Code Online (Sandbox Code Playgroud)
jQuery没有'克隆'方法吗?如何使用jQuery克隆数组?
在下面的代码中,
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
namespace clone_test_01
{
public partial class MainForm : Form
{
public class Book
{
public string title = "";
public Book(string title)
{
this.title = title;
}
}
public MainForm()
{
InitializeComponent();
List<Book> books_1 = new List<Book>();
books_1.Add( new Book("One") );
books_1.Add( new Book("Two") );
books_1.Add( new Book("Three") );
books_1.Add( new Book("Four") );
List<Book> books_2 = new List<Book>(books_1);
books_2[0].title = "Five";
books_2[1].title = "Six";
textBox1.Text = books_1[0].title;
textBox2.Text = books_1[1].title;
} …Run Code Online (Sandbox Code Playgroud) 当在数组上使用时,Java中的clone()方法究竟返回了什么?它是否返回一个包含从原始数据复制的数据的新数组?
例如:
int[] a = {1,2,3};
int[] b = a.clone();
Run Code Online (Sandbox Code Playgroud) 使用mercurial克隆存储库时,可以传递-U/ - noupdate标志以创建没有工作副本的克隆.如果忘记在克隆时传递此标志,是否可以删除工作副本?如果是这样,怎么样?
这在概念上类似于这个git问题,但对于mercurial.
我有一个对象数组.我知道对象由"引用"分配,数组由"值"分配.但是当我分配数组时,数组的每个元素都引用了对象,所以当我修改任一数组中的对象时,更改会反映在另一个数组中.
有没有一种简单的方法来克隆一个数组,或者我必须循环它来克隆每个对象?
当我制作一个可拖动的克隆并将其放入一个droppable时,我无法再拖动它.我怎么做?其次,我只能弄清楚如何.append将克隆添加到droppable中.但是它会在任何现有元素之后捕捉到左上角而不是掉落位置.
$(document).ready(function() {
$("#container").droppable({
drop: function(event, ui) {
$(this).append($(ui.draggable).clone());
}
});
$(".product").draggable({
helper: 'clone'
});
});
</script>
<div id="container">
</div>
<div id="products">
<img id="productid_1" src="images/pic1.jpg" class="product" alt="" title="" />
<img id="productid_2" src="images/pic2.jpg" class="product" alt="" title="" />
<img id="productid_3" src="images/pic3.jpg" class="product" alt="" title="" />
</div>
Run Code Online (Sandbox Code Playgroud) jquery drag-and-drop clone jquery-ui-draggable jquery-ui-droppable
有没有办法用所有绘制的内容创建canvas元素的深层副本?