<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
<html><body>
<p>A nep&aacute;li birkap&aacute;sztoros cikket m&aacute;r meg is szavaztam.</p>
<p>Getter/Setter... nagy dilemma, ebből a szempontb&oacute;l ugye semmi &eacute;rtelme nem volna; semmilyen k&ouml;r&uuml;lm&eacute;nyek k&ouml;zt.</p>
<p>&Aacute;m ugye az encapsulationt szeretj&uuml;k. No meg az okfejt&eacute;st is, ez&eacute;rt ezt meg is hagyom kives&eacute;z&eacute;sre a n&aacute;lam ehhez jobban kony&iacute;t&oacute; p&aacute;sztoroknak.</p>
<p>Ertek ugye nem immutable, &aacute;mde ojjektum (300000... nem... 30000... vagy nem tudom...), szinte teljesen feleslegesen; j&oacute;, &eacute;rt&eacute;k 1..9, illetve a null, ami az &uuml;res mezőt takarja - n&aacute;lam is ezokb&oacute;l lett int helyett Integer. A clone met&oacute;dust, h&aacute;&aacute;&aacute;&aacute;&aacute;t, elsz&uacute;rtam :) Nem mindig friss az ember.</p>
<p>Az&eacute;rt nem az eredeti probl&eacute;m&aacute;t oldottam meg, mert az legink&aacute;bb abb&oacute;l ad&oacute;dik, hogy keverednek az (am&uacute;gy megker&uuml;lt) absztrakci&oacute;s szintek, objektum, aminek nem kellene annak lennie, &eacute;s nem az, aminek pedig k&eacute;ne - a m&aacute;trix, mint olyan, maga a bűz. Azt megtartom azokra az alkalmakra, amikor ".386p" a forr&aacute;sk&oacute;dom első sora, vagy amikor el van wrappelve valami m&ouml;g&eacute;, amivel dolgozni is lehet (a p&eacute;ld&aacute;nak is ilyesmi lett volna a l&eacute;nyege).</p>
<p>&nbsp;</p>
<p>Mindent &ouml;sszevetve, az&eacute;rt &ouml;r&uuml;l&ouml;k, hogy megihlettelek :D</p>
<p>&nbsp;</p>
<p>Bence</p>
<p>&nbsp;</p>
<p>On Mon, 11 Mar 2013 11:05:09 +0100, Peter Verhas wrote:</p>
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px; width:100%"><!-- html ignored --><!-- head ignored --><!-- meta ignored --><!-- meta ignored -->Itten komoly bajok vannak ezzel a p&eacute;ld&aacute;val.
<div>Elősz&ouml;r is, a clone() met&oacute;dusban nincs y, kimaradt a m&aacute;sodik, belső ciklus.</div>
<div>Pont az eredeti probl&eacute;m&aacute;t, hogy az Ertek-ből nem keletkezik &uacute;j copy nem oldja meg. Persze ezt kiker&uuml;l&ouml;d azzal, hogy helyette immutable Integer-t haszn&aacute;lsz, amivel cs&ouml;kkented az absztakci&oacute;s szintet, &eacute;s ez&eacute;rt nincs probl&eacute;ma. Mintap&eacute;ld&aacute;nak kifejezetten rossz. Egy&eacute;bk&eacute;nt is.</div>
<div>Azt&aacute;n meg nagyon nem l&aacute;tom &eacute;rtelm&eacute;t a setternek, meg a getternek. Mi&eacute;rt olvashat&oacute;bb a&nbsp;</div>
<div>
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px; width:100%">
<p>&nbsp;copy.setValue(x, y, values[x][y]);</p>
</blockquote>
mint&nbsp;</div>
<div>copy.values[x][y] = values[x][y]</div>
<div>Csak az&eacute;rt settert meg gettert haszn&aacute;lni, mert az divatos? Mi az &eacute;rtelme a setter-nek, meg a getter-nek? Nah, majd erről is &iacute;rok egy birkap&aacute;sztor cikket. Elmagyar&aacute;zom a birk&aacute;knak a l&eacute;nyeget (bocs, ez csak rossz vicc volt, nagyon bek&eacute;pzelt a mondat, de nem b&iacute;rom kihagyni a po&eacute;nt).</div>
<div><br />
<div>
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><span class="Apple-style-span" style="color: #888888;">--</span><span class="Apple-style-span" style="color: #888888;"><br /></span><span class="Apple-style-span" style="color: #888888;">Verh&aacute;s P&eacute;ter</span><span class="Apple-style-span" style="color: #888888;"><br /></span><span class="Apple-style-span" style="color: #888888;"></span><span class="Apple-style-span" style="color: #888888;"><a href="mailto:peter@verhas.com">peter@verhas.com</a></span><span class="Apple-style-span" style="color: #888888;"><br /></span><span class="Apple-style-span" style="color: #888888;">+36(30)9306805</span><span class="Apple-style-span" style="color: #888888;"><br /></span><span class="Apple-style-span" style="color: #888888;">skype: verhas</span></div>
</div>
<span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; border-spacing: 0px;"><span class="Apple-style-span" style="border-collapse: separate; color: #000000; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium;"></span><br class="Apple-interchange-newline" /></span></div>
<br />
<div>
<div>On 2013.03.10., at 23:28, <a href="mailto:coder@gmail.hu">coder@gmail.hu</a> wrote:</div>
<br class="Apple-interchange-newline" />
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px; width:100%">
<div>
<p>How about this approach?</p>
<p>// A 9 egy magic number...<br />public class Board {</p>
<p>&nbsp; &nbsp; private final Integer[][] values = new Integer[9][9];<br /><br />&nbsp; &nbsp;&nbsp;public void setValue(int x, int y, Integer value) {<br />&nbsp; &nbsp; &nbsp; &nbsp; values[x][y] = value;<br />&nbsp; &nbsp; }<br /><br />&nbsp; &nbsp; public Integer getValue(int x, int y) {<br />&nbsp; &nbsp; &nbsp; &nbsp; return values[x][y];<br />&nbsp; &nbsp; }<br /><br />&nbsp; &nbsp; public Board clone() {<br />&nbsp; &nbsp; &nbsp; &nbsp; Board copy = new Board();<br />&nbsp; &nbsp; &nbsp; &nbsp; for (int x = 0; i &lt; 9; i++) {<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; copy.setValue(x, y, values[x][y]);<br />&nbsp; &nbsp; &nbsp; &nbsp; }<br />&nbsp; &nbsp; }<br />}</p>
<div>&nbsp;</div>
<p>Pr&oacute;b&aacute;ld meg refaktor&aacute;lni egy kicsit a k&oacute;dot, h&aacute;tha seg&iacute;t. J&oacute;magam legal&aacute;bbis prefer&aacute;lni szoktam a min&eacute;l kisebb, k&ouml;nnyen menedzselhető darabokat; &aacute;ltal&aacute;ban k&ouml;nnyebb is &uacute;gy adott probl&eacute;m&aacute;kra megold&aacute;st tal&aacute;lni.</p>
<div>&nbsp;</div>
<p>&Uuml;dv.: Bence</p>
<div>&nbsp;</div>
<p>On Sun, 10 Mar 2013 20:11:18 +0200, Bara Zoltan wrote:</p>
<blockquote style="padding-left: 5px; border-left: #1010ff  2px  solid; margin-left: 5px; width: 100%;">
<pre>Sziasztok

Van itt egy jelenseg amit nem ertek tabla erteket elmentenem 
tablaTemp-be majd valtoztatom
a tablat es vissza kene tolteni az eredeti ertekeket.
Eloszor probalkoztam a tabla = tablaTemp utasitassal persze sikertelenul.
Aztan olvastam hogy System.ArrayCopy a megoldas.
De nekem megse ugy tunik.
Ime a kodreszlet:


public class Sudoku extends Observable {
     private Ertek tabla[][] = new Ertek[9][9];
     private Ertek tablaTemp[][] = new Ertek[9][9];
   ....

// visszaad egy ket dimenzios tombot ami tele van a tabla elso 
lehetseges soraival
      e = elsoSorGenerate();

//atmentem a tablat hogy legyen meg az eredeti

             for (int sor = 0; sor &lt; tabla.length; sor++) {
                 System.arraycopy(tabla[sor], 0, tablaTemp[sor], 0, 
tabla[sor].length);

             }

     if (e[tablaMutato][0] != 0){
                     for (int oszlop = 0; oszlop &lt; 9; oszlop++) { //ITT 
A HIBA ATIRODIK A TEMP ARRAY IS
tabla[0][oszlop].setErtek(e[tablaMutato][oszlop]);
                     }
                 }

Na ezt nem ertem hogy mutat arra cimre a tabla es a  tablaTemp, hogy 
lehet megvaltoztatni a tabla ertekeit hogy megmaradjon a tablaTemp.

Udv
Zoli

_______________________________________________
Javalist mailing list
<a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a>
<a href="http://lists.javaforum.hu/mailman/listinfo/javalist">http://lists.javaforum.hu/mailman/listinfo/javalist</a>
</pre>
</blockquote>
<div>&nbsp;</div>
</div>
_______________________________________________<br />Javalist mailing list<br /><a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br />http://lists.javaforum.hu/mailman/listinfo/javalist</blockquote>
</div>
</div>
</blockquote>
<div>&nbsp;</div>
</body></html>