From 34821bb536e96cb0656a47b976361009421b7df1 Mon Sep 17 00:00:00 2001 From: Phoebe Swaine Date: Thu, 13 Apr 2023 16:06:29 +0100 Subject: [PATCH] Dictionary lookup words and test to validate --- Game.java | 15 ++++++++-- application.java | 26 +++++++++--------- out/production/Scrabble-Project/Game.class | Bin 3116 -> 3341 bytes .../Scrabble-Project/application.class | Bin 1728 -> 1094 bytes out/production/Scrabble-Project/words.txt | 1 + words.txt | 1 + 6 files changed, 27 insertions(+), 16 deletions(-) diff --git a/Game.java b/Game.java index ebb6cd1..a15f32c 100644 --- a/Game.java +++ b/Game.java @@ -20,12 +20,13 @@ public class Game { HashMap tileBag; HashSet dict; - public Game(int numberOfPlayers) { + public Game() { this.scrabbleBoard = new char[15][15]; this.tileBag = new HashMap(); this.dict = new HashSet(); this.initTileBag(); + System.out.println("tile bag init done\n"); try { this.initDict(); } catch (FileNotFoundException e) { System.err.println("FileNotFoundExpectation: "+ e); @@ -71,22 +72,30 @@ private void initTileBag() { } } - //Initializes the dictionary + //Initializes the dictionary - text file from 'https://github.com/redbo/scrabble/blob/master/dictionary.txt' private void initDict() throws FileNotFoundException { + System.out.println("entered initDict()"); BufferedReader dictReader = new BufferedReader(new FileReader(("words.txt"))); try { String line = dictReader.readLine(); + System.out.println("first line : "+ line); - //add all words from web2 to hashset + //add all words from words.txt to hashset while (line != null) { dict.add(line); + line = dictReader.readLine(); } + System.out.println("done reading entire file"); } catch (IOException e) { System.err.println("IOException : "+ e); e.printStackTrace(); } } + /* + @param word input to be validated + @return boolean if word is valid + */ public boolean validateWord(String word) { return this.dict.contains(word); } diff --git a/application.java b/application.java index 6846a68..6c558d5 100644 --- a/application.java +++ b/application.java @@ -8,24 +8,24 @@ public static void main(String[] args) { System.out.println(" "); //Loop to create players - for (int i = 0; i < 2; i++) { - - System.out.println("Enter the name of player "+ (i + 1) +" : "); - String playerName = scanner.next(); - System.out.println(playerName); - - //create an array to store players? - //call player class - } +// for (int i = 0; i < 2; i++) { +// +// System.out.println("Enter the name of player "+ (i + 1) +" : "); +// String playerName = scanner.next(); +// System.out.println(playerName); +// +// //create an array to store players? +// //call player class +// } //test methods for Game class System.out.println("begin board initialization"); - Game game = new Game(2); + Game game = new Game(); System.out.println("board initialization complete"); - game.validateWord("HELLO"); - game.validateWord("PILOT"); - game.validateWord("DDEINUBIUYISVY"); + System.out.println(game.validateWord("HELLO")); + System.out.println(game.validateWord("PILOT")); + System.out.println(game.validateWord("DDEINUBIUYISVY")); } } diff --git a/out/production/Scrabble-Project/Game.class b/out/production/Scrabble-Project/Game.class index f173224563130fe7ec63abbadb6941ea96a8e116..c653dea3357d57a280bef73f6b07f22163f5e9a1 100644 GIT binary patch literal 3341 zcmaJ@ZF3XX6@IR5yt3HX!ZBde03sp877iwm5`qH+3)>jv7m%^BO_E+qD|@lLtE^TI z?t7c}zBf%<()M$i%;ZZl!Op-;W-`-eGHw1q{z5+F52Ouw&Pp;Xnf8P3UY$MXx##6M zXYaqhx&1MKllWT{4QMpbWMT`N6=K))itfv6XQ6L={+gBX6`G&19os*p(AeEGWgx=M z++4B+QEW9}ns`7&O~ZQGQh1=4@$~$B-WqVVmo?C)uq{9=`F6hVoGvbo>OvH)XcYT) z6Az+8!Qe}4KrbjfnA)V>Z(zqJl(gkXvAvAaWnve;Ll?5PxLXfF)&3|C+ihZxM7UL= znJgdJf;jdWc-X`v*k2QTdbQ|V%M8^m5p#RlE!*vz@NCCV`<|tj`y)8O16b#T(+$W3E5smYnS1^^8^UZP$^Qj+%H<0&288ubp*1X5uLvSJ=6%m#n1gWVAnR z`-|KaeeL)~g`*W8=;eJ;`+GL~D0Mtxq94yN8oM~ST<})|mdr+R3a1S`YvK$BstE|f zOD<|pXMD?}$%@XGtnr*eXLm9TzoEmroyDMmA;B50k|4ktaeQk*PRFQV;S8Fj)%H>4ilBKhj zXW$}js_!JDWqAZ?g_f6GFIzn1Unhqra9KL9H;OS#%kB!(b*~m>tAGt-m^Cqnt7HS& zmrdCY`>mrp>~MuU?NE4LD*l4PfpFASZiT|Gh@_dciFst0E}hNRk+Pbc*$8-Or;t1@ zPLQc_CdT%xc#bg|kQS~+Ju<$*$#xDITRgg^&~q=kkjDM_l|$advUEUO&@E|SXO<>O zAWIx}O%%l8NXB)1Z9AlKn^Rhzx4iM(L|(629wlmolOgG5>35stY%EZi)SOYQP|D5d z{FL@=`Ckz#zSvt%(f{lQV)~0V;hR%3`1(2d0^c~@Dkv?|vcVLjZayeh`{uldM@u*x z3Q?J6Rjm;u-Ii@v7|qn5wuW{Yjj_+=Eo!mkbdMvD7eh5bSCgATQw6?e(%D<4pv zIYaDx*W--15oTpYu?%`nJK4Nd+@EsYrBWf>pcPL;Ijk|9TrF7lQJ)LxS6LhqRUnc& zpHJJq#gYDdgwpkrvg9m zT#Nko2^s^t;lw&rBGwjb`zMTsTWCq#LF>#qVz;o3+wI)$yoJuh8Xo!pd)psf!(-e( zeiO0O2RL%@Hogl`_C8^c;2569VFLR+;1ITQ-ATtf5knVU*o6al2np<_<{s+qqxN2$ z;OA-x52Hlw9dzjgOswD~;sL|Bj#WOt&tD7;cWIyu2F&HKN!=f8gmaJ@VxivW(hxWx zk%Av$0XEAoD{u{R5uk*5XjrDZ)Ki})KE$>)JpGRPhwNf!KElaZ%STAA;oNi}8K7iK zSdgq2oTb1BYYYmA8I}yy+YD3C9M(8juQ4JZHJ+TOq$zB3p3YEx3Th6Xsn?hdX$S|(B=kr) z;BmQ0ao5M)Vctxhz&I(Wag=@XBwi+k-zFXZ&Iz`T1Y6-EdvcNqy37Pj;WVyL z|0*qJZ~?QJ=AB~>&j(>8*v)&;gCF8YjNt-%as@x;jxkh1?Lrbi!B2Ur1ic$g|3$*U zn1P>l+?7ei?&V);;9QKEm${`_6NOjsDpyI%NdgLFiv-FTo%i@B+|t>NSwW@Bxw3nW nUh(#V*8}}G@Ft%f{QnC|e;2H81?$`R6W?%(;Lmsme?`}~F<&yc literal 3116 zcmai0TT>Hf7=FG8EQu=#D0rv`YCS+yP|<3Qq9$_E07?)9dRmeNR+8Oxvq9;(wXHq( zrWf`P)agub>{M`crqc`C>9qcV{)OK5t|$9^n*}$KX(zM0U!Lzhzt8*a{`}9~?*N>@ zXCVZzNuE=z=D1-RPN%@CmevskwOmY0B!UQGwE|Ve z8VObPXgOVAO(AV-lapCJZfSN#L0F*PwODkFY6R?*CKT}|tG$FR&Gc4C);-6~qpT2{2we8JIkERk;8 z0*$3~Xy&|am`=*EbuAZbVCDCy*o%Dv>vP(yp0Lcc=8PK73|9q5Go6A!N6WJEiZR4m zOZ#rGXxT8QnP)rpD>$IyAUarzr6hdbS?#=xC2KM~&xPMa>xgX6VHHo~2xW~zS1#|& zyUiaD;TarL5L0m+Czi~+%841x*3yp7oRv8(Ths@q1U9rJ{4p-eFwB!UrQo!*6JP4B zYp2h2^l53Osin`a>*3U_!xYEs_GkE0&!pv^iHv!9EPg!RZL02j}JL0?YEKaV4#otZ5HY zDu!{9L?a0@NyFs0tZVTHw%o){2AC71PQj?UY zO^nBl8zPSs&q`3vuzU1SHtUwS!AAzK!2Y@P7eyc>kC0N+NZ;jf%E`e4=}P&`yTeEA zC?%PwnzD*^T9-^C!DM!Al6`a&w=AdN*jm0{cV?_i zAzXtuLwE~sE4U_m{Eom5m#FUi80MTctGAaNl#Z2d&ZT8@f^YaI#S<(U?bXaoRxj*G zTGnha?;js8QeO?r6o=>Y`U>I`KKUiO`XJ9lLd#}ThNH)7@t(k@@A8<0d2oa5hBjF#Q1a2c3y@$H7MMQ3+p36oq z*Wbp5=mIwL+IAC>{%^2j?_ETJ1+?9wxhUFj0NZKKpus2u0@gF24TxYPU2noJY$m>i za?O<7%F}-vIvM(9N;XsPAXLmE>n3s%Ihe#5nwyA##dSRb52+eZ5aJXo*sfAIj~XwV zJroi0y2V?-jYDn$yImh@Y16YDkT2SjVjxHFloJo4-=cm2hrST^;>Vi8C16OQ6nen|X=WB3a( zQHSGV8$T!Zqf^9jQlxN7=r}Fr_-Sw*32_5w#8>DNclpl$1-*~>CLVZvllCPG3Ezs}h{_oj3lGh zup0Em6`Y5~a=B_}lOE<-uuL_QH5g;j!z5|xik`*lI$0?_Hp|shon?i=LZN6L)%ML= z!#t@sT&!A8>YbI=D%PVGxMYSER8fIgX{1l=nxK?;MZ7cKL1}gAb+I;Wmu`sl^a{wa zDX3o-*_Mpm{DmeDn%2ED@$ih-8*Jl$CEVyRSFv$Ku=u1m)+W&=)r~X%;-y~vH#sBo zz=2yt`b5VBE<)%e7$M83sPL0#oT@PAa*!JWU6s@Eo)mW2l@Hupu*bd#&B+n-6uNsC Ig;6>91^UrBjQ{`u literal 1728 zcmah}TT|Os5dMyBkTBwA5+H<7QJ}FCz-^k|;-sbAf?Hu|4W^J@ax9;Mf-GsIW2W?} zndy({b6@(LJitsc(;tu@kss2TUiMhd;0$i78J*SHv-|Dtr#<`PuV=plxQA*Q2_!Y7 z40NHJVek<@=6RQU2l>tFBVkL1?z@iX$d4J4*<3|~&M?$8YDmY;mu>EOBJ4pLy&4Py zedvD;rF;@eQD;av9>Zm;>FN0Sq8Bt|S%!kw3u$N=RPl!x#{7DnKEdBa&%Q-xXS^CsmfSwt;6W?< zblGo&wpepieS>W!EU1h~wdDIUk|7T^ggo?X(LgtL(x_lp!&j=O_84Z)lXtvh|48KH z8sauvf8@**1gRXP0=89;>^8KSmP`F4&o8~pg?UO)sFmGon9wmkLmTf^S zbJs09QWSJNpaxv^qzFxUC`^y2GX3wH7mifSykks* z43qzDN`o#g9aA(H6LeicD|IcpY5jzDd6JA|*NroK{ghTCHoy{=Y1e}l ztdfSD*({Psk?!$xXnRl5b4IQG6q(G(DaMqXY)P{vl|FfIqU%>o)A2;=;WNAmkn-j! z-YSu5p1yxhu;2cEsoZbS?m6c6y3Vk$p%m|sVlMOUDc;+i%X}1zf)Xn6Bo=91!w{`0 z^iqw(RK`^rGt;0ULYiAN$QRL1=?}o7{g)WQK1N|<3`ZD8NY*DbTYti2v+&!5u}c1H zxKHTwn8iAZO%@;HGki{QdT~rh8$^dqJ|%3@=@#h?B>u#_295neot(rMq)Sk|GD)4R Tx9Q!-*R)I1*EjeM99RAU&SI)Z diff --git a/out/production/Scrabble-Project/words.txt b/out/production/Scrabble-Project/words.txt index 0cc22a2..4b94470 100644 --- a/out/production/Scrabble-Project/words.txt +++ b/out/production/Scrabble-Project/words.txt @@ -1,3 +1,4 @@ +A AA AAH AAHED diff --git a/words.txt b/words.txt index 0cc22a2..4b94470 100644 --- a/words.txt +++ b/words.txt @@ -1,3 +1,4 @@ +A AA AAH AAHED