States and Capitals Christian Wipe clean Workbook Let s Do It Again Workbooks

Lab 9: Sets in the Coffee Drove Framework For this week's lab,...

Lab ix: Sets in the Java Collection Framework

For this week's lab, you will utilize two of the classes in the Java Collection Framework:HashSet andTreeSet. Y'all will use these classes to implement a spell checker.

Ready Methods

this lab, you lot volition need to use some of the methods that are defined in the Set interface. Call up that if ready is a Gear up, then the following methods are divers:

  • ready.size() -- Returns the number of items in the set up.
  • set.add(detail) -- Adds the particular to the gear up, if it is non already at that place.
  • set.contains(item) -- Bank check whether the prepare contains the particular.
  • set.isEmpty() -- Bank check whether the ready is empty.

Yous will also need to exist able to traverse a set up, using either an iterator or a for-each loop.

Reading a Dictionary

The file words.txt (in the code directory) contains a list of English words, with one discussion on each line. You will look up words in this list to check whether they are correctly spelled. To make the list easy to use, y'all can store the words in a fix. Since there is no demand to have the words stored in society, yous can use aHashSet for maximum efficiency.

Employ a Scanner to read the file. You can create scanner,filein, for reading from a file with a statement such as:

                     filein = new Scanner

(new File("/classes/s09/cs225/words.txt"));

and that a file tin can be processed, token by token, in a loop such as:

while (filein.hasNext()) {

     String tk = filein.next();

     process(tk); // do something with the token

}

(For the wordlist file, a token is simply a word.)

Beginning your main program past reading the words from words.txt and storing them in aHashSet<Cord>. For the purposes of this program,convert all words to lower case before putting them in the set up. To make certain that you've read all the words, bank check the size of the set. (Information technology should be 72875.) You could also employ the contains method to check for the presence of some common word in the set.

Checking the Words in a File

Once you have the list of words in a prepare, it's like shooting fish in a barrel to read the words from a file and check whether each discussion is in the fix. Start by letting the user select a file. Y'all can either permit the user type the proper name of the file or you can employ the following method:

        /**

         * Lets the user select an input file using a standard file

         * option dialog box. If the user cancels the dialog

         * without selecting a file, the return value is null.

         */

        static File getInputFileNameFromUser() {

           JFileChooser fileDialog = new JFileChooser();

           fileDialog.setDialogTitle("Select File for Input");

           int option = fileDialog.showOpenDialog(goose egg);

           if (option != JFileChooser.APPROVE_OPTION)

              render nothing;

           else

              render fileDialog.getSelectedFile();

        }

Use a Scanner to read the words from the selected file. In order to skip over any not-letter characters in the file, you can use the post-obit command just after creating the scanner (where in is the variable name for the scanner):

in.useDelimiter("[^a-zA-Z]+");

(In this argument, "[^a-zA-Z]+" is a regular expression that matches any sequence of 1 or more non-letter characters. This essentially makes the scanner treat any non-letter the mode it would normally treat a infinite.)

You can then get through the file, read each word (converting it to lower instance) and cheque whether the set contains the word. At this point, just print out any discussion that you find that is non in the dictionary.

Providing a List of Possible Right Spellings

A spell checker shouldn't merely tell you lot what words are misspelled -- it should also requite you a list of possible correct spellings for that discussion. Write method

static TreeSet corrections(String badWord, HashSet dictionary)

that creates and returns aTreeSet<String> containing variations onbadWord that are independent in the lexicon. In your main program, when you discover a word that is non in the set of legal words, pass that word to this method (along with the ready). Take the render value and output any words that information technology contains; these are the suggested correct spellings of the misspelled give-and-take. Here, for example, is office of the output from a sample program when information technology was run with the HTML source of this page as input:

html: (no suggestions)

cpsc: (no suggestions)

hashset: hash set

treeset: tree prepare

cvs: cs, vs

isempty: is empty

href: ref

txt: tat, tet, text, tit, tot, tut

filein: file in

pre: are, ere, ire, ore, pare, pee, per, pie, poe, pore, prep, pres,

      prey, pro, pry, pure, pyre, re

hasnext: has adjacent

wordlist: word list

getinputfilenamefromuser: (no suggestions)

jfilechooser: (no suggestions)

filedialog: file dialog

setdialogtitle: (no suggestions)

int: pismire, dint, hint, in, ina, inc, ind, ink, inn, ins, inti, into,

     information technology, lint, mint, nit, pint, tint

Note that the program was written so that information technology will non output the aforementioned misspelled discussion more than than once. (This is washed by keeping a set of misspelled words that have been output.) If thecorrections() method returns an empty fix, the program outputs the message "(no suggestions)". Since the corrections are stored in a tree set, they are automatically printed out in alphabetical order with no repeats.

The possible corrections that the program considers are as follows:

• Delete any one of the letters from the misspelled word.

• Alter any alphabetic character in the misspelled word to any other letter.

• Insert any letter at any indicate in the misspelled word.

• Bandy whatsoever two neighboring characters in the misspelled word.

• Insert a space at any point in the misspelled give-and-take (and check that both of the words that are produced are in the lexicon)

For constructing the possible corrections, you will have to make extensive use of substrings. If w is a cord, thendue west.substring(0,i) is the cord consisting of the first i characters in westward (non including the character in position i, which would be grapheme numberi+one). Andwest.substring(i) consists of the characters of westward from position i through the stop of the string. For case, ifch is a character, then yous can change thei-th character of w to ch with the statement:

String s = w.substring(0,i) + ch + westward.substring(i+1);

Also, you will find it convenient to apply afor loop in which the loop control variable is achar:

for (char ch = 'a'; ch <= 'z'; ch++) { ...

Answer & Explanation

Verified Solved past verified skilful

Rated Helpful

entesq

consectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentes

ce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum exercise

rem ipsum dolor sit down amet, consectetur adipiscing elit. Nam lacinia pulvinar torto

,ur laoreet. Nam risus dues, dapibus a molestie consten

Unlock full access to Course Hero

Explore over sixteen million footstep-by-step answers from our library

Subscribe to view respond

Step-by-step explanation

a. Fusce dui lec

dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam lacinia pulvinar tortorcon50oneclair-conditioning, dictumrisus sumiametiur licetchiliad ipsum dolo,dictum vitae odio. Donec aliquet. Lorem ipsum dolorsua molestie consequat, ultrices ac magna. Fusce dui lectufng elit. Nia pulvinar tortor nesuac, dictusuec facconsectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque daconsectetur am ipslestie consequat, ultrices air-conditioning magna. Fusce dui lectus, congue vel laoreet ac, dictum vitatrimolestie consequat, ultrices ac magna. Fusce dui lectus,sutrices ac magna. Fusce dui lectus, congue vel laoreet ac, dictum vitaitur laoreeusce dui lectus, congue vel laoreet ac, dsuinia pulvinar tortor nec facyard ipsat, ultrices air-conditioning magna. Fusce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, consectetuuFusce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit down amet,tring elit. Nam lacinia pulvinar tortor nec facilisis. Pellsucongue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, consecteturair-conditioning,lestie consequat, ucea molestie consequctum vitae odio. Donec aliquet. Lorem ipsum dair conditioning,dictum vimolestie consequa molestie conseqonecfacilisis. Pellentesque dapibusiaDonec al0s ante, dapibusicitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices air conditioning magac,ur laoreet. Nam risus ante, dapibus auair conditioning, dictum vitae odio. Donec afinia pulvinar tortor nec facac,ipsum dent1000 ipsum dolor sit ametonecs a molestie consequat, ultrac,ipsum dusceFusce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit apulv, consectetur adipiscing elit. Nam lacinia pulvinar tortac,dictum sixur laoreet. Nam risus dues, dapibus a molestie consec aliquet. Lorem ipsum dolor0congue vel l ametipsumec aliquet. Lorem ipsumuscfacilisis. Pellentesque dapibus esuet, consectetur adipiscing elit. Nam lacinia pulinia pulvinar tortor neone thousand ipsumiaor nec facilisis. Pellentesque dapibametm ipsumuone thousand risus ante, dapibus a molestie consequat, ultrior nelametinia ponectesque dapor neamet, consectetur adipiscing elit. Nam ametongue velipsum dolorto. Donec aliquet. Lorem ipsum dolo,sum dolor sit amet, consectetur adipiscing elsuitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magnicDiallen0entesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie conse0cing elit. Nam lacinia pulvinar tortor nec facilisfctum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, cuitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrtrictum vitae odio. Donec aliicDac,onguecefficituriafficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna.usus ante, dapibus a molestie consequat, ultrices ac magna. Fusce duitrisouth ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui l0ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit aicDair-conditioning,onguecefficituriafficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna.uac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, consectetur atriusce dui lectus, congue vel laoreet ac, dictum vitae odio. Doneac,ongueceair-conditioning, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit ametufficitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, conguetrinec facilisis. Pellentesque dapibus efficitur laoreeticDiallenfentesque dapibus efficitur laoreet. Nam risus ante, dapibus a molestie conse0rem ipfs a molestieac,amet, consectetur adipiscifsouthward a molestieac,fficitur laoreet. Nam risus dues, dapibus a molestie consequat, ultricf, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, consecteuitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrtring elit. Nam lacinia pulvinaor neo. Donec aliquet. Lorem ipsu

, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam lacin

words.PNG

sum do

SelectFile.PNG Otpt.PNG

Educatee reviews

76% (29 ratings)

beltsteris.blogspot.com

Source: https://www.coursehero.com/tutors-problems/Java-Programming/21112512-Lab-9-Sets-in-the-Java-Collection-Framework-For-this-weeks-lab-you/

0 Response to "States and Capitals Christian Wipe clean Workbook Let s Do It Again Workbooks"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel