因為如果是二元的圖形的時候,floodfill方法不能正確的填充到不規則的區域
procedure flood_fill_4(x, y:integer;old_color, fill_color:int64; vcanvas:tcanvas);
var vcurrentcolor:int64;
p : tpoint;
begin
p.x:=x;
p.y:=y;
vcurrentcolor:= vcanvas.pixels[p.x,p.y];
if (vcurrentcolor=old_color) and (vcurrentcolor<>fill_color) then
begin
vcanvas.pixels[x,y]:= fill_color;
flood_fill_4(x,y+1,old_color,fill_color,vcanvas);
flood_fill_4(x,y-1,old_color,fill_color,vcanvas);
flood_fill_4(x-1,y,old_color,fill_color,vcanvas);
flood_fill_4(x+1,y,old_color,fill_color,vcanvas);
endend;
IDEA 重寫equals重寫toString
重寫equals方法 idea中直接輸入eq回車進入重寫方法 第二步如果obj這個物件連學生 student 這個型別都不是,那麼肯定返回false if obj instanceof student 第三步如果是學生型別,強制把obj轉換成學生物件,不轉換預設是objeke student s s...
重寫equals為啥需要重寫hashCode
以前一直記得重寫equals要把hashcode也要重寫了,但是一直也是沒有搞明白,最近在看一些東西,覺得有必要記錄一下。equals是object類的方法,這個方法的作用是比較兩個物件是否相等的,可能有人會問了,使用 號不就可以比較了,為啥非得使用equals方法呢。假設你有乙個student類,...
重寫equals時還必須重寫hashCode方法
1.public boolean equals object obj 和 hashcode 方法是object物件中的方法 2.equals 與 hashcode間的關係是這樣的 a.如果兩個物件相同 即用equals比較返回true,那麼它們的 hashcode 值一定要相同 b.如果兩個物件的 ...