vault backup: 2024-02-06 13:09:16
This commit is contained in:
34
.obsidian/workspace.json
vendored
34
.obsidian/workspace.json
vendored
@@ -11,10 +11,11 @@
|
|||||||
"id": "505b4bbc8a7e15f6",
|
"id": "505b4bbc8a7e15f6",
|
||||||
"type": "leaf",
|
"type": "leaf",
|
||||||
"state": {
|
"state": {
|
||||||
"type": "diff-view",
|
"type": "markdown",
|
||||||
"state": {
|
"state": {
|
||||||
"file": ".obsidian/workspace.json",
|
"file": "Semester 2/Database Systems/Week 4/Week 4 Database Systems.md",
|
||||||
"staged": false
|
"mode": "source",
|
||||||
|
"source": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -85,6 +86,7 @@
|
|||||||
"state": {
|
"state": {
|
||||||
"type": "backlink",
|
"type": "backlink",
|
||||||
"state": {
|
"state": {
|
||||||
|
"file": "Semester 2/Database Systems/Week 4/Week 4 Database Systems.md",
|
||||||
"collapseAll": false,
|
"collapseAll": false,
|
||||||
"extraContext": false,
|
"extraContext": false,
|
||||||
"sortOrder": "alphabetical",
|
"sortOrder": "alphabetical",
|
||||||
@@ -101,6 +103,7 @@
|
|||||||
"state": {
|
"state": {
|
||||||
"type": "outgoing-link",
|
"type": "outgoing-link",
|
||||||
"state": {
|
"state": {
|
||||||
|
"file": "Semester 2/Database Systems/Week 4/Week 4 Database Systems.md",
|
||||||
"linksCollapsed": false,
|
"linksCollapsed": false,
|
||||||
"unlinkedCollapsed": true
|
"unlinkedCollapsed": true
|
||||||
}
|
}
|
||||||
@@ -122,7 +125,9 @@
|
|||||||
"type": "leaf",
|
"type": "leaf",
|
||||||
"state": {
|
"state": {
|
||||||
"type": "outline",
|
"type": "outline",
|
||||||
"state": {}
|
"state": {
|
||||||
|
"file": "Semester 2/Database Systems/Week 4/Week 4 Database Systems.md"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -163,10 +168,19 @@
|
|||||||
},
|
},
|
||||||
"active": "505b4bbc8a7e15f6",
|
"active": "505b4bbc8a7e15f6",
|
||||||
"lastOpenFiles": [
|
"lastOpenFiles": [
|
||||||
|
"Semester 2/Database Systems/Week 4/Week 4 Database Systems.md",
|
||||||
|
"Semester 2/Database Systems/Week 4",
|
||||||
|
"Semester 2/Programming 2/Project/Part 1/__SHELL78.class",
|
||||||
|
"Semester 2/Programming 2/Project/Part 1/__SHELL78.java",
|
||||||
|
"Semester 2/Programming 2/Project/Part 1/__SHELL75.class",
|
||||||
|
"Semester 2/Programming 2/Project/Part 1/__SHELL75.java",
|
||||||
|
"Semester 2/Programming 2/Project/Part 1/__SHELL74.class",
|
||||||
|
"Semester 2/Programming 2/Project/Part 1/__SHELL74.java",
|
||||||
|
"Semester 2/Programming 2/Project/Part 1/item_data_1.txt",
|
||||||
|
"Semester 2/Programming 2/Project/Part 1/Library.java#",
|
||||||
|
"Semester 2/Programming 2/Project/Part 1/LibraryItem.java#",
|
||||||
"Semester 2/HCI/Week 2/Week 2 Human Computer Interfaces.md",
|
"Semester 2/HCI/Week 2/Week 2 Human Computer Interfaces.md",
|
||||||
"Semester 2/HCI/Week 3/Week 3 Human Computer Interfaces.md",
|
"Semester 2/HCI/Week 3/Week 3 Human Computer Interfaces.md",
|
||||||
"Semester 1/Database Systems/Exercise Booklet.pdf",
|
|
||||||
"Semester 2/HCI/Week 3",
|
|
||||||
"Semester 1/Database Systems/Week 10/Week 10 Database Systems.md",
|
"Semester 1/Database Systems/Week 10/Week 10 Database Systems.md",
|
||||||
"Semester 1/Database Systems/Week 11/Week 11 Database Systems.md",
|
"Semester 1/Database Systems/Week 11/Week 11 Database Systems.md",
|
||||||
"Semester 1/Database Systems/Week 5/Week 5 Database Systems.md",
|
"Semester 1/Database Systems/Week 5/Week 5 Database Systems.md",
|
||||||
@@ -178,11 +192,7 @@
|
|||||||
"Semester 1/Database Systems/Week 4/Week 4 Database Systems - Data Description Language.md",
|
"Semester 1/Database Systems/Week 4/Week 4 Database Systems - Data Description Language.md",
|
||||||
"Semester 1/Database Systems/Week 6/Week 6 Database Systems.md",
|
"Semester 1/Database Systems/Week 6/Week 6 Database Systems.md",
|
||||||
"Semester 2/Database Systems/Week 3/Week 3 Database Systems.md",
|
"Semester 2/Database Systems/Week 3/Week 3 Database Systems.md",
|
||||||
"Semester 2/Computer Systems Internals & Linux/Week 3/q1.sh",
|
|
||||||
"Semester 2/Computer Systems Internals & Linux/Week 3",
|
|
||||||
"Semester 2/Database Systems/Exercise Booklet.pdf",
|
|
||||||
"Semester 2/Database Systems/Week 2/Week 2 Database Systems.md",
|
"Semester 2/Database Systems/Week 2/Week 2 Database Systems.md",
|
||||||
"Semester 2/Database Systems/Week 3",
|
|
||||||
"images/Pasted image 20240126103004.png",
|
"images/Pasted image 20240126103004.png",
|
||||||
"images/Pasted image 20240126102902.png",
|
"images/Pasted image 20240126102902.png",
|
||||||
"images/Pasted image 20240126101454.png",
|
"images/Pasted image 20240126101454.png",
|
||||||
@@ -192,11 +202,7 @@
|
|||||||
"CCNA/1 - Networking Today/1.2 - Network Components.md",
|
"CCNA/1 - Networking Today/1.2 - Network Components.md",
|
||||||
"images/Pasted image 20240125163704.png",
|
"images/Pasted image 20240125163704.png",
|
||||||
"CCNA/1 - Networking Today/1.1 - Networks Affect our Lives.md",
|
"CCNA/1 - Networking Today/1.1 - Networks Affect our Lives.md",
|
||||||
"CCNA/1 - Networking Today",
|
|
||||||
"CCNA/Module Information.md",
|
"CCNA/Module Information.md",
|
||||||
"CCNA",
|
|
||||||
"Semester 2/Computer Systems Internals & Linux/Week 2/media/geese_honk_on_public_farm_with_people_in_background_uk.mp3",
|
|
||||||
"Semester 2/Computer Systems Internals & Linux/Week 2/media/freethunderstormtimelapse.mov",
|
|
||||||
"Semester 2/Computer Systems Internals & Linux/Week 2/media/freeimage-7063371.jpg",
|
"Semester 2/Computer Systems Internals & Linux/Week 2/media/freeimage-7063371.jpg",
|
||||||
"Semester 2/Computer Systems Internals & Linux/Week 2/media/freeimage-5931627.jpg",
|
"Semester 2/Computer Systems Internals & Linux/Week 2/media/freeimage-5931627.jpg",
|
||||||
"Semester 2/Computer Systems Internals & Linux/Week 2/media/freeimage-216999.jpg",
|
"Semester 2/Computer Systems Internals & Linux/Week 2/media/freeimage-216999.jpg",
|
||||||
|
@@ -0,0 +1 @@
|
|||||||
|
#
|
Binary file not shown.
@@ -4,6 +4,10 @@ comment0.target=Library()
|
|||||||
comment0.text=\n\ Constructor\ for\ objects\ of\ class\ Library\n
|
comment0.text=\n\ Constructor\ for\ objects\ of\ class\ Library\n
|
||||||
comment1.params=item
|
comment1.params=item
|
||||||
comment1.target=void\ storeItem(LibraryItem)
|
comment1.target=void\ storeItem(LibraryItem)
|
||||||
|
comment1.text=\n\ Appends\ a\ LibraryItem\ to\ the\ itemList.\n
|
||||||
comment2.params=
|
comment2.params=
|
||||||
comment2.target=void\ printAllItems()
|
comment2.target=void\ printAllItems()
|
||||||
numComments=3
|
comment2.text=\n\ Prints\ to\ the\ terminal\ all\ items\ in\ the\ itemList\n
|
||||||
|
comment3.params=
|
||||||
|
comment3.target=void\ readItemData()
|
||||||
|
numComments=4
|
||||||
|
@@ -6,13 +6,21 @@
|
|||||||
* @version (a version number or a date)
|
* @version (a version number or a date)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// Import all required libraries. Not using .* as it is not good practice due to potential conflicts.
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.Scanner;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.PrintWriter;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.awt.FileDialog;
|
||||||
|
import java.awt.Frame;
|
||||||
|
|
||||||
public class Library
|
public class Library
|
||||||
{
|
{
|
||||||
private ArrayList<LibraryItem> itemList;
|
private ArrayList<LibraryItem> itemList; // Initialise an ArrayList of name itemList to store LibraryItems
|
||||||
|
|
||||||
/**
|
/*
|
||||||
* Constructor for objects of class Library
|
* Constructor for objects of class Library
|
||||||
*/
|
*/
|
||||||
public Library()
|
public Library()
|
||||||
@@ -20,11 +28,17 @@ public class Library
|
|||||||
itemList = new ArrayList<LibraryItem>();
|
itemList = new ArrayList<LibraryItem>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Appends a LibraryItem to the itemList.
|
||||||
|
*/
|
||||||
public void storeItem( LibraryItem item )
|
public void storeItem( LibraryItem item )
|
||||||
{
|
{
|
||||||
itemList.add( item );
|
itemList.add( item );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Prints to the terminal all items in the itemList
|
||||||
|
*/
|
||||||
public void printAllItems()
|
public void printAllItems()
|
||||||
{
|
{
|
||||||
for( LibraryItem item : itemList )
|
for( LibraryItem item : itemList )
|
||||||
@@ -33,4 +47,34 @@ public class Library
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void readItemData() //throws IOException
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
Frame frame = null; // Initialise a null frame
|
||||||
|
FileDialog fileBox = new FileDialog( frame, "Open", FileDialog.LOAD ); // Initialise filebox with the null frame pointer
|
||||||
|
fileBox.setVisible( true ); // Open a file selection dialog to the user.
|
||||||
|
|
||||||
|
Scanner fileScanner = new Scanner( new File( fileBox.getDirectory() + fileBox.getFile() ) );
|
||||||
|
|
||||||
|
while( fileScanner.hasNextLine() )
|
||||||
|
{
|
||||||
|
|
||||||
|
String lineItem = fileScanner.nextLine();
|
||||||
|
|
||||||
|
if ( !lineItem.contains( "//" ) && !lineItem.trim().isEmpty() ) { // Ensure no comments or empty lines are included
|
||||||
|
|
||||||
|
Scanner detailScanner = new Scanner ( lineItem ).useDelimiter(","); // Create a new scanner to grab the values in a comma separated list
|
||||||
|
|
||||||
|
LibraryItem libraryItem = new LibraryItem();
|
||||||
|
libraryItem.readData( detailScanner );
|
||||||
|
|
||||||
|
storeItem( libraryItem ); // Store the new LibraryItem in the itemList
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch( IOException e ) { // Catch any IO Exceptions that may occur from improper file selection.
|
||||||
|
System.err.println( "Caught IOException: " + e.getMessage() + "\nAn I/O Exception has occurred, please check file is readable and correct format." );
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Binary file not shown.
@@ -3,28 +3,33 @@ comment0.params=title\ itemCode\ cost\ timesBorrowed\ onLoan
|
|||||||
comment0.target=LibraryItem(java.lang.String,\ java.lang.String,\ int,\ int,\ boolean)
|
comment0.target=LibraryItem(java.lang.String,\ java.lang.String,\ int,\ int,\ boolean)
|
||||||
comment0.text=\n\ Constructor\ for\ objects\ of\ class\ LibraryItem\n
|
comment0.text=\n\ Constructor\ for\ objects\ of\ class\ LibraryItem\n
|
||||||
comment1.params=
|
comment1.params=
|
||||||
comment1.target=java.lang.String\ getTitle()
|
comment1.target=LibraryItem()
|
||||||
comment1.text=\n\ Field\ Accessor\ Start\n
|
comment1.text=\n\ Default\ constructor\ for\ object\ of\ class\ LibraryItem\n
|
||||||
comment10.params=onLoan
|
comment10.params=timesBorrowed
|
||||||
comment10.target=void\ setOnLoan(boolean)
|
comment10.target=void\ setTimesBorrowed(int)
|
||||||
comment11.params=
|
comment11.params=onLoan
|
||||||
comment11.target=void\ printDetails()
|
comment11.target=void\ setOnLoan(boolean)
|
||||||
comment11.text=\n\ Field\ Mutator\ End\n
|
comment12.params=
|
||||||
|
comment12.target=void\ printDetails()
|
||||||
|
comment12.text=\n\ Field\ Mutator\ End\n
|
||||||
|
comment13.params=detailScanner
|
||||||
|
comment13.target=void\ readData(java.util.Scanner)
|
||||||
comment2.params=
|
comment2.params=
|
||||||
comment2.target=java.lang.String\ getItemCode()
|
comment2.target=java.lang.String\ getTitle()
|
||||||
|
comment2.text=\n\ Field\ Accessor\ Start\n
|
||||||
comment3.params=
|
comment3.params=
|
||||||
comment3.target=int\ getCost()
|
comment3.target=java.lang.String\ getItemCode()
|
||||||
comment4.params=
|
comment4.params=
|
||||||
comment4.target=int\ getTimesBorrowed()
|
comment4.target=int\ getCost()
|
||||||
comment5.params=
|
comment5.params=
|
||||||
comment5.target=boolean\ getOnLoan()
|
comment5.target=int\ getTimesBorrowed()
|
||||||
comment6.params=title
|
comment6.params=
|
||||||
comment6.target=void\ setTitle(java.lang.String)
|
comment6.target=boolean\ getOnLoan()
|
||||||
comment6.text=\n\ Field\ Accessor\ End\n\ \n\ Field\ Mutator\ Start\n
|
comment7.params=title
|
||||||
comment7.params=itemCode
|
comment7.target=void\ setTitle(java.lang.String)
|
||||||
comment7.target=void\ setItemCode(java.lang.String)
|
comment7.text=\n\ Field\ Accessor\ End\n\ \n\ Field\ Mutator\ Start\n
|
||||||
comment8.params=cost
|
comment8.params=itemCode
|
||||||
comment8.target=void\ setCost(int)
|
comment8.target=void\ setItemCode(java.lang.String)
|
||||||
comment9.params=timesBorrowed
|
comment9.params=cost
|
||||||
comment9.target=void\ setTimesBorrowed(int)
|
comment9.target=void\ setCost(int)
|
||||||
numComments=12
|
numComments=14
|
||||||
|
@@ -5,6 +5,10 @@
|
|||||||
* @author (your name)
|
* @author (your name)
|
||||||
* @version (a version number or a date)
|
* @version (a version number or a date)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
import java.util.Scanner;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class LibraryItem
|
public class LibraryItem
|
||||||
{
|
{
|
||||||
// instance variables - replace the example below with your own
|
// instance variables - replace the example below with your own
|
||||||
@@ -26,6 +30,18 @@ public class LibraryItem
|
|||||||
this.onLoan = onLoan;
|
this.onLoan = onLoan;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Default constructor for object of class LibraryItem
|
||||||
|
*/
|
||||||
|
public LibraryItem()
|
||||||
|
{
|
||||||
|
title = "";
|
||||||
|
itemCode = "";
|
||||||
|
cost = 0;
|
||||||
|
timesBorrowed = 0;
|
||||||
|
onLoan = false;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Field Accessor Start
|
* Field Accessor Start
|
||||||
*/
|
*/
|
||||||
@@ -94,10 +110,16 @@ public class LibraryItem
|
|||||||
{
|
{
|
||||||
System.out.println( title + " with an item code " + itemCode + " has been borrowed " + timesBorrowed + " times.");
|
System.out.println( title + " with an item code " + itemCode + " has been borrowed " + timesBorrowed + " times.");
|
||||||
if( onLoan )
|
if( onLoan )
|
||||||
System.out.println( "This item is at present on loan and when new cost " + cost + " pence." );
|
System.out.println( "This item is at present on loan and when new cost " + cost + " pence.\n" );
|
||||||
else
|
else
|
||||||
System.out.println( "This item is at present not on loan and when new cost " + cost + " pence." );
|
System.out.println( "This item is at present not on loan and when new cost " + cost + " pence.\n" );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void readData( Scanner detailScanner ) {
|
||||||
|
this.title = detailScanner.next();
|
||||||
|
this.itemCode = detailScanner.next();
|
||||||
|
this.cost = Integer.parseInt( detailScanner.next() );
|
||||||
|
this.timesBorrowed = Integer.parseInt( detailScanner.next() );
|
||||||
|
this.onLoan = Boolean.parseBoolean( detailScanner.next() );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
12
Semester 2/Programming 2/Project/Part 1/item_data_1.txt
Normal file
12
Semester 2/Programming 2/Project/Part 1/item_data_1.txt
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
// this is a comment, any lines that start with //
|
||||||
|
// (and blank lines) should be ignored
|
||||||
|
|
||||||
|
|
||||||
|
// data is title, itemCode, cost, timesBorrowed, onLoan
|
||||||
|
Objects First with Java, LM002411,3989,781,true
|
||||||
|
Compilers: Principles Techniques and Tools, LM002711,599,0,FALSE
|
||||||
|
C# How to Program, LM002876,4599,45,TRUE
|
||||||
|
Unix Made Easy: The Basics and Beyond (Made Easy), LM002468,6395,0,TRUE
|
||||||
|
Galerkin Finite Element Methods for Parabolic Problems, LM002153,4554,0,FALSE
|
||||||
|
|
||||||
|
|
@@ -1,3 +1,41 @@
|
|||||||
#BlueJ package file
|
#BlueJ package file
|
||||||
#Fri Feb 02 12:26:48 GMT 2024
|
dependency1.from=Library
|
||||||
|
dependency1.to=LibraryItem
|
||||||
|
dependency1.type=UsesDependency
|
||||||
|
objectbench.height=76
|
||||||
|
objectbench.width=1900
|
||||||
|
package.editor.height=874
|
||||||
|
package.editor.width=1774
|
||||||
|
package.editor.x=0
|
||||||
|
package.editor.y=31
|
||||||
|
package.numDependencies=1
|
||||||
|
package.numTargets=2
|
||||||
|
package.showExtends=true
|
||||||
|
package.showUses=true
|
||||||
project.charset=UTF-8
|
project.charset=UTF-8
|
||||||
|
target1.editor.height=1049
|
||||||
|
target1.editor.width=960
|
||||||
|
target1.editor.x=0
|
||||||
|
target1.editor.y=31
|
||||||
|
target1.height=50
|
||||||
|
target1.name=LibraryItem
|
||||||
|
target1.naviview.expanded=true
|
||||||
|
target1.showInterface=false
|
||||||
|
target1.type=ClassTarget
|
||||||
|
target1.typeParameters=
|
||||||
|
target1.width=100
|
||||||
|
target1.x=70
|
||||||
|
target1.y=10
|
||||||
|
target2.editor.height=1049
|
||||||
|
target2.editor.width=960
|
||||||
|
target2.editor.x=960
|
||||||
|
target2.editor.y=31
|
||||||
|
target2.height=50
|
||||||
|
target2.name=Library
|
||||||
|
target2.naviview.expanded=true
|
||||||
|
target2.showInterface=false
|
||||||
|
target2.type=ClassTarget
|
||||||
|
target2.typeParameters=
|
||||||
|
target2.width=80
|
||||||
|
target2.x=170
|
||||||
|
target2.y=60
|
||||||
|
@@ -6,11 +6,11 @@ dependency2.from=ZooApp
|
|||||||
dependency2.to=Zoo
|
dependency2.to=Zoo
|
||||||
dependency2.type=UsesDependency
|
dependency2.type=UsesDependency
|
||||||
objectbench.height=76
|
objectbench.height=76
|
||||||
objectbench.width=686
|
objectbench.width=1900
|
||||||
package.editor.height=400
|
package.editor.height=874
|
||||||
package.editor.width=560
|
package.editor.width=1774
|
||||||
package.editor.x=774
|
package.editor.x=0
|
||||||
package.editor.y=277
|
package.editor.y=31
|
||||||
package.numDependencies=2
|
package.numDependencies=2
|
||||||
package.numTargets=3
|
package.numTargets=3
|
||||||
package.showExtends=true
|
package.showExtends=true
|
||||||
|
Reference in New Issue
Block a user