Write an enhanced for loop

Assignment Help JAVA Programming
Reference no: EM13755468

Create a document using your favorite word processor and type your exercise solutions. At the top of the document be sure to include your name and the homework assignment number, e.g. HW1. Convert this document into Adobe PDF format and name the PDF file <asuriteid>.pdf where <asuriteid> is your ASURITE user id (for example, my ASURITE user id is kburger2 so my file would be named kburger2.pdf). To convert your document into PDF format, Microsoft Office versions 2008 and newer will export the document into PDF format by selecting the proper menu item from the File menu. The same is true of Open Office and Libre Office. Otherwise, you may use a freeware PDF converter program, e.g.,

CutePDF is one such program.

Next, create a folder named <asuriteid> and copy <asuriteid>.pdf to that folder. Copy any Java source code files to this folder (note: Java source code files are the files with a .java file name extension; do not copy the .class files as we do not need those).

Next, compress the <asuriteid> folder creating a zip archive file named <asuriteid>.zip. Upload <asuriteid>.zip to the Homework Assignment 1 dropbox by the assignment deadline. The deadline is 11:59pm Wed 26 Mar. Consult the online syllabus for the late and academic integrity policies.

Note: not all of these exercises will be graded, i.e., random ones will be selected for grading.

2 Learning Objectives

1. Use the Integer and Double wrapper classes.

2. Declare and use ArrayList class objects.

3. Write code to read from, and write to, text files.

4. Write an exception handler for an I/O exception.

5. Write Java classes and instantiate objects of those classes.

6. Read UML class diagrams and convert the diagram into Java classes.

7. Identify and implement dependency, aggregation, inheritance, and composition relationships.

3 ArrayLists

3.1 Write code that creates an ArrayList<Integer> object named list and fills list with these numbers (using one or a pair of for or while loops):

0 1 2 3 4 0 1 2 3 4

3.2 Consider the ArrayList<Integer> object named list containing these Integers:

list = { 1, 2, 3, 4, 5, 4, 3, 2, 1, 0 }

What are the contents of list after this loop completes?

for (int i = 1; i < 10; ++i) {

list.set(i, list.get(i) + list.get(i-1));

}

3.3 Write an enhanced for loop that counts how many numbers in an ArrayList<Integer> object named list are negative. Print the count after the loop terminates.

3.4 Write a method named arrayListSum() that has one parameter pList which is an object of the class ArrayList <Integer>. The method shall return the sum of the elements of pList.

3.5 Write a method named named arrayListCreate() that has two int parameters pLen and pInitValue. The method shall create and return a new ArrayList<Integer> object which has exactly pLen elements. Each element shall be initialized to pInitValue.

3.6 Write a void method named insertName() that has two input parameters: (1) pList which is an object of ArrayList <String> where each element of pList is a person's name; and (2) a String object named pName. Assume the names in pList are sorted into ascending order. The method shall insert pName into pList such that the sort order is maintained.

3.7 Write a void method named arrayListRemove() which has two parameters: pList is an object of the ArrayList <Integer> class and pValue is an int. The method shall remove all elements from pList that are equal to pValue.

4 Text File Input/Output

4.1 Explain what happens if you try to open a file for reading that does not exist.

4.2 Explain what happens if you try to open a file for writing that does not exist.

4.3 Name your source code file Hw1_1.java. Write a program that prompts the user for the name of a Java source code file. The program shall read the source code file and output the contents to a new file named the same as the input file, but with a .txt file name extension (e.g., if the input file is foo.java then the output file shall be named foo.java.txt). Each line of the input file shall be numbered with a line number (formatted as shown below) in the output file. For example, if the user enters Hw1_1.java as the name of the input file and Hw1_1.java contains:

//***************************************************************

// CLASS: Hw1_1 (Hw1_1.java)

//***************************************************************

public class Hw1_1 {

public static void main(String[] pArgs) {

}

public Hw1_1() {

}

}

then the contents of the output file Hw1_1.java.txt would be:

[001] //***************************************************************

[002] // CLASS: Hw1_1 (Hw1_1.java)

[003] //***************************************************************

[004] public class Hw1_1 {

[005] public static void main(String[] pArgs) {

[006] }

[007] public Hw1_1() {

[008] }

[009] }

Hint: to print an integer as shown above in a field of width 3 with leading 0's use the printf() method with a format specifier of %03d.

5 Exceptions and Exception Handling

5.1 Explain the difference between throwing an exception and catching an exception, i.e., explain what happens when an exception is thrown and when one is caught?

5.2 Explain what a checked exception is. Give one example.

5.3 Explain what an unchecked exception is. Give one example.

5.4 Which type of uncaught exceptions must be declared with the throws reserved word in a method header?

5.5 Why don't you need to declare that your method might throw an IndexOutOfBoundsException?

Arizona State University Page 2

CSE205 Object Oriented Programming and Data Structures Homework 1 :: 25 pts

5.6 Is the type of the exception object always the same as the type declared in the catch clause that catches it? If not, why not?

5.7 What is the purpose of the finally clause? Give an example of how it can be used.

5.8 Which exceptions can the next() and nextInt() methods of the Scanner class throw? Are they checked exceptions or unchecked exceptions?

6 Objects and Classes

6.1 Explain how an instance method differs from a class method (static method).

6.2 Explain what happens if we write a class named C but do not implement any constructors in C.

6.3 (a) In a static method, it is easy to differentiate between calls to instance methods and calls to static methods. How do you tell them apart? (b) Why is it not as easy for methods that are called from an instance method?

6.4 Explain what happens when this application runs and why.

public class C {

private int x;

private String s;

public static void main(String[] pArgs) {

new C();

}

public C() {

x = s.length();

System.out.println("x = " + x);

}

}

6.5 Write the declaration for a class named C that declares: (1) a private int instance variable named mX; (2) a private int class variable named mY initialized to 0; (3) a private int class constant named A which is equivalent to 100; (4) a public int class constant named B which is equivalent to 200; (5) public accessor and mutator methods for mX named getX() and setX(); (6) public accessor and mutator methods for mY named getY() and setY(); (7) a constructor that has one int input parameter named pX which calls setX() to initialize mX to pX; (8) a default constructor that calls C(int) to initialize mX to -1.

6.6 Continuing with the previous exercise, write the declaration for a class named Main that implements the main() method. Within main() suppose we wish to instantiate a C object named cObj1 calling the default constructor. Write the code to do this.

6.7 Continuing, write the code to instantiate another C object named cObj2 calling the second constructor to initialize the mX instance variable to 10.

6.8 Continuing, within main(), are the following statements legal, i.e., do they compile? If so, explain what happens when the statement is executed. If not, explain why the statement is illegal.

(a) int a1 = C.mX;

(b) int a2 = C.mY;

(c) int a3 = C.A;

(d) int a4 = C.B;

(e) cObj1.C(20);

(f) int a5 = cObj1.getX();

(g) cObj1.setX(20);

(h) cObj2.setX(cObj1.getX());

(i) int a6 = C.getX();

(j) C.setX(20);

(k) int a7 = cObj1.getY();

(l) cObj1.setY(20);

(m) int a8 = C.getY();

(n) C.setY(20);

6.9 Continuing, suppose we add these two methods to the declaration of class C. For each assignment statement, if it is legal (compiles) explain what happens when the statement is executed. For each assignment statement that is illegal (syntax error) explain why the code is illegal.

public void f() {

mX = 0;

mY = 0;

}

public static void g() {

mX = 0;

mY = 0;

}

7 Object Oriented Design and UML Class Diagrams

7.1 Below is the code for a Java class named C. Draw the UML class diagram that corresponds to this code. There are several free and open-source tools for drawing UML diagrams. Two reasonably simple and cross-platform (Windows, Mac, Linux) tools are Umlet (https://www.umlet.com/) and Violet (https://alexdp.free.fr/violetumleditor). I have been using Umlet for the diagrams I am drawing and I highly recommend it as it is very easy to quickly draw a nice-looking class diagram. Using Umlet, you can export your diagram as an image file by selecting File | Export As... on the main menu. I recommend you export the diagram as a .png image and then copy-and paste the .png image into your word processing document.

public class C {

public static final int CONST1 = 100;

private int mX;

private double mY;

private String mZ;

public C() { this(0, 0, ""); }

public C(int pX, double pY, String pZ) { setX(pX); setY(pY); setZ(pZ); }

public int getX() { return mX; }

public int getY() { return mY; }

private String getZ() { return mZ; }

public void setX(int pX) { mX = pX; }

public void setY(int pY) { mY = pY; }

private void setZ(int pZ) { mZ = pZ; }

}

7.2 On the next page is a UML class diagram that shows several classes that are related in various ways. (a) What type of class relationship, if any, exists between Course and Roster? If there is a relationship, modify the diagram to indicate the relationship and label each end of the relationship with a multiplicity. (b) What type of class relationship, if any, exists between Roster and Student. If there is a relationship, modify the diagram to indicate the relationship and label each end of the relationship with a multiplicity. (c) What type of class relationship, if any, exists between Student and UndergradStudent? If there is a relationship, modify the diagram to indicate the relationship and label each end of the relationship with a multiplicity. (d) What type of class relationship, if any, exists between Student and GradStudent? If there is a relationship, modify the diagram to indicate the relationship and label each end of the relationship with a multiplicity. (e) What type of class relationship, if any, exists between UndergradStudent and GradStudent? If there is a relationship, modify the diagram to indicate the relationship and label each end of the relationship with a multiplicity.

Note: Draw this diagram in a UML diagramming tool such as Umlet or Violet and copy-and-paste your completed diagram into your word processing document.

Reference no: EM13755468

Questions Cloud

What are all the reasons for the war of 1812 : What are all the reasons for the war of 1812?
Preferred balance sheet presentation : Using the letters provided, classify items (1-13) according to the most commonly preferred balance sheet presentation.
Identify and explain two ethical principles : Select a business or other organization with which you are familiar, one you work for or have considerable knowledge about - Identify and explain two ethical principles that might be applied to solving this problem.
What great battle was the trojan horse involved in : What great battle was the trojan horse involved in?
Write an enhanced for loop : Write an enhanced for loop that counts how many numbers in an ArrayList object named list are negative. Print the count after the loop terminates
What was the most important exchange made between peoples : What was the most important exchange made between people as commerce continued on the trade routes? Then, explain why it is the most important!
Balance sheet of euisara inc : The following is a partial listing of accounts for Euisara, Inc., for the year ended December 31, 2010.
How to analyze a supply and demand problem : How to analyze a supply and demand problem - What data/information will the epoxy paint producer going to use to decide to increase output?
Classified balance sheet-whoops bookkeeping service : The following balance sheet, prepared by Whoops Bookkeeping Service, has been given to you to review.

Reviews

Write a Review

JAVA Programming Questions & Answers

  Create an application that will allow a new customer

Create an application that will allow a new customer to order a house. You'll allow the customer to choose among four models (Aspen, Britattany, Colonial, and Dartmoor) by creating separate ButtonGroups.

  What ways can vulnerable inmates be protected

What ways can vulnerable inmates be protected? Why are classification and housing assignments so critical to these populations?

  Consider an array of integers

Consider an array of integers as below: int[] a = {5, 2, -4, 3, 0, -5, 7, 11, 6, 13} Complete the method named count(int[] a) in the class Count. The method should return the number of positive numbers in the array

  The program randomly generates the quiz question one by

the program randomly generates the quiz question one by one from a set of available questions on general knowledge

  Invoice project - test the invoice application

Test the Invoice Application with an invalid total like $1000 and include the dollar sign. This should cause the application to crash with a runtime error and to display an error message in the Output window. Take a screenshot of the error message..

  Write a method called rectsum

Write a method called rectSum that will get the sum of a rectangle of elements within a 2D array of ints

  Write a program called drawing in the form of a public class

Write a program called Drawing in the form of a public class Drawing that extends a Java JFrame and provides the following features.

  Design a java application using the list data structure

You are to design a Java application using the list data structure to manage your contact information. Each contact may have the subsequent data:

  Adt for a two color double stack adt consists of two stacks

design an adt for a two color double stack adt that consists of two stacks one red and one blue and has its operations color coded versions of the regular stack adt operations.

  Write a university grading system in java

University grading system maintains number of tables to store, retrieve and manipulate student marks. Write a JAVA program that would simulate a number of cars.

  This project mainly focuses on explaining your

this project focuses on demonstrating your understanding of java collections. before attempting this project be sure

  Describe how you would design a class for it

A class is a blueprint for an object. A class may have a default constructor, a constructor with arguments, accessor methods, public fields, private fields, and mutator methods.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd