How to Safely Decontaminate Babies Toys From the Flu
Lab ix: Sets in the Java Collection Framework For this calendar week's lab,...
Lab 9: Sets in the Java Collection Framework
For this week'southward lab, you will apply ii of the classes in the Java Collection Framework:HashSet andTreeSet. You volition apply these classes to implement a spell checker.
Fix Methods
this lab, you will need to utilise some of the methods that are defined in the Fix interface. Retrieve that if set is a Set, and so the following methods are divers:
- prepare.size() -- Returns the number of items in the prepare.
- prepare.add(item) -- Adds the item to the prepare, if it is not already in that location.
- set.contains(detail) -- Bank check whether the set contains the item.
- prepare.isEmpty() -- Cheque whether the ready is empty.
You will likewise demand to exist able to traverse a gear 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 word on each line. You will look upwards words in this list to check whether they are correctly spelled. To make the list easy to use, you tin shop the words in a set up. Since in that location is no need to have the words stored in order, you can use aHashSet for maximum efficiency.
Employ a Scanner to read the file. You tin 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 exist processed, token by token, in a loop such as:
while (filein.hasNext()) {
Cord tk = filein.side by side();
process(tk); // do something with the token
}
(For the wordlist file, a token is simply a word.)
Get-go your main program past reading the words from words.txt and storing them in aHashSet<String>. For the purposes of this program,convert all words to lower case earlier putting them in the fix. To make sure that you lot've read all the words, check the size of the gear up. (It should exist 72875.) Y'all could also use the contains method to check for the presence of some common word in the set.
Checking the Words in a File
Once you take the list of words in a set up, it's easy to read the words from a file and check whether each give-and-take is in the set. Showtime by letting the user select a file. Yous tin can either let the user type the name of the file or you can use the following method:
/**
* Lets the user select an input file using a standard file
* selection dialog box. If the user cancels the dialog
* without selecting a file, the render value is null.
*/
static File getInputFileNameFromUser() {
JFileChooser fileDialog = new JFileChooser();
fileDialog.setDialogTitle("Select File for Input");
int choice = fileDialog.showOpenDialog(null);
if (option != JFileChooser.APPROVE_OPTION)
return zippo;
else
return fileDialog.getSelectedFile();
}
Use a Scanner to read the words from the selected file. In order to skip over any non-letter characters in the file, you can use the following command just afterwards creating the scanner (where in is the variable name for the scanner):
in.useDelimiter("[^a-zA-Z]+");
(In this statement, "[^a-zA-Z]+" is a regular expression that matches whatsoever sequence of 1 or more non-alphabetic character characters. This essentially makes the scanner treat any non-letter the way information technology would ordinarily treat a space.)
You can then go through the file, read each word (converting it to lower example) and check whether the gear up contains the word. At this signal, just print out any word that you lot find that is not in the dictionary.
Providing a List of Possible Correct Spellings
A spell checker shouldn't merely tell you what words are misspelled -- it should also give you a list of possible correct spellings for that word. Write method
static TreeSet corrections(String badWord, HashSet dictionary)
that creates and returns aTreeSet<String> containing variations onbadWord that are contained in the dictionary. In your principal plan, when you observe a word that is not in the gear up of legal words, pass that give-and-take to this method (forth with the set). Have the return value and output any words that it contains; these are the suggested correct spellings of the misspelled word. Here, for example, is part of the output from a sample programme when it was run with the HTML source of this page as input:
html: (no suggestions)
cpsc: (no suggestions)
hashset: hash set
treeset: tree set
cvs: cs, vs
isempty: is empty
href: ref
txt: tat, tet, text, tit, tot, tut
filein: file in
pre: are, ere, ire, ore, peel, pee, per, pie, poe, pore, prep, pres,
casualty, pro, pry, pure, pyre, re
hasnext: has next
wordlist: word listing
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
Annotation that the program was written so that it volition not output the same misspelled word more once. (This is washed by keeping a set up of misspelled words that have been output.) If thecorrections() method returns an empty gear up, the programme 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.
• Change whatever letter in the misspelled word to whatever other letter.
• Insert any letter at whatever indicate in the misspelled give-and-take.
• Swap any ii neighboring characters in the misspelled give-and-take.
• Insert a infinite at whatever betoken in the misspelled word (and cheque that both of the words that are produced are in the lexicon)
For constructing the possible corrections, yous will accept to brand extensive utilise of substrings. If westward is a string, and sowest.substring(0,i) is the string consisting of the first i characters in w (not including the character in position i, which would be character numberi+1). Andw.substring(i) consists of the characters of w from position i through the end of the cord. For case, ifch is a character, and so yous tin change thei-th graphic symbol of w to ch with the statement:
String southward = due west.substring(0,i) + ch + due west.substring(i+1);
Also, you lot will detect it convenient to employ afor loop in which the loop control variable is achar:
for (char ch = 'a'; ch <= 'z'; ch++) { ...
Answer & Explanation
Solved by verified practiced
entesq
consectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentes
ce dui lectus, congue vel laoreet air-conditioning, dictum vitae odio. Donec aliquet. Lorem ipsum do
rem ipsum dolor sit down amet, consectetur adipiscing elit. Nam lacinia pulvinar torto
,ur laoreet. Nam risus ante, dapibus a molestie cons10
Unlock full access to Grade Hero
Explore over 16 1000000 pace-past-step answers from our library
Subscribe to view answer
Step-by-step caption
a. Fusce dui lec
dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam lacinia pulvinar tortorconloneclair-conditioning, dictumrisus sumiametiur licetthou ipsum dolo,dictum vitae odio. Donec aliquet. Lorem ipsum dolorsua molestie consequat, ultrices ac magna. Fusce dui lectufng elit. Nia pulvinar tortor nesuair conditioning, dictusuec facconsectetur adipiscing elit. Nam lacinia pulvinar tortor nec facilisis. Pellentesque daconsectetur am ipslestie consequat, ultrices ac 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 facm 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 amet,tring elit. Nam lacinia pulvinar tortor nec facilisis. Pellsucongue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit amet, consecteturac,lestie consequat, ucea molestie consequctum vitae odio. Donec aliquet. Lorem ipsum dac,dictum vimolestie consequa molestie conseqonecfacilisis. Pellentesque dapibusiaDonec al0south ante, dapibusicitur laoreet. Nam risus ante, dapibus a molestie consequat, ultrices air conditioning magazineair-conditioning,ur laoreet. Nam risus ante, dapibus auac, dictum vitae odio. Donec afinia pulvinar tortor nec facac,ipsum dentm ipsum dolor sit ametonecs a molestie consequat, ultrair-conditioning,ipsum dusceFusce dui lectus, congue vel laoreet ac, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit apulv, consectetur adipiscing elit. Nam lacinia pulvinar tortair-conditioning,dictum viur laoreet. Nam risus ante, 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 negrand ipsumiaor nec facilisis. Pellentesque dapibametm ipsumum 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 duitris ante, dapibus a molestie consequat, ultrices air conditioning 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.uair-conditioning, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit down amet, consectetur atriusce dui lectus, congue vel laoreet air conditioning, dictum vitae odio. Doneair-conditioning,ongueceair conditioning, dictum vitae odio. Donec aliquet. Lorem ipsum dolor sit ametufficitur laoreet. Nam risus dues, dapibus a molestie consequat, ultrices ac magna. Fusce dui lectus, conguetrinec facilisis. Pellentesque dapibus efficitur laoreeticDiallenfentesque dapibus efficitur laoreet. Nam risus dues, dapibus a molestie conse0rem ipfs a molestieac,amet, consectetur adipiscifs a molestieair conditioning,fficitur laoreet. Nam risus ante, 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 down amet, consectetur adipiscing elit. Nam lacin
sum practise
villarrealtwordor.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 "How to Safely Decontaminate Babies Toys From the Flu"
Post a Comment