From 6b6d1e87f1b40bfac1c3c20abab843ed6d4cedf9 Mon Sep 17 00:00:00 2001 From: Petter Karstensen Date: Wed, 10 Jan 2024 13:37:22 +0100 Subject: [PATCH] Completed exercise --- src/main/java/com/booleanuk/core/Exercise.java | 17 ++++++++--------- .../java/com/booleanuk/extension/Extension.java | 16 +++++++++++----- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Exercise.java b/src/main/java/com/booleanuk/core/Exercise.java index 5b1fe79..74453cb 100644 --- a/src/main/java/com/booleanuk/core/Exercise.java +++ b/src/main/java/com/booleanuk/core/Exercise.java @@ -7,7 +7,7 @@ public class Exercise { // 1. The brokenUrl member above contains an invalid URL. There's a z instead of an s in the protocol (httpz instead of https). // Using the `replace` method on brokenUrl, set the fixedUrl member below to the correct value. // https://docs.oracle.com/en/java/javase/18/docs/api/java.base/java/lang/String.html#replace(char,char) - public String fixedUrl = ""; + public String fixedUrl = brokenUrl.replace("httpz", "https"); // Here's a documentation link for all string methods, use it to figure out how to complete the rest of these requirements: @@ -16,26 +16,25 @@ public class Exercise { // 2. There are currently some upper case characters in the URL. Using an appropriate string method on the fixedUrl member above, // set the value of lowerCasedUrl. - public String lowerCasedUrl = ""; + public String lowerCasedUrl = fixedUrl.toLowerCase(); // 3. There is still white space on both ends of the URL! Use the appropriate string method to trim that white space // and set the value of the url member below - public String url = ""; + public String url = lowerCasedUrl.trim(); // 4. Using the appropriate string method on url, set the value of the protocol member below - public String protocol = ""; - + public String protocol = url.split(":")[0]; // 5. Using the appropriate string method on url, set the value of the domain member below - public String domain = ""; - + public String domain = url.substring(url.indexOf("://") + 3, url.indexOf("/", url.indexOf("://") + 3)); // 6. Set the length member below to the length of the url member - public int length = 0; + public int length = url.length(); // 7. Using concatenation and existing members, set the faqUrl member below to the faq page of the boolean website - public String faqUrl = ""; + public String faqUrl = protocol + "://" + domain + "/faq"; + } diff --git a/src/main/java/com/booleanuk/extension/Extension.java b/src/main/java/com/booleanuk/extension/Extension.java index 5f84cdb..90a02d4 100644 --- a/src/main/java/com/booleanuk/extension/Extension.java +++ b/src/main/java/com/booleanuk/extension/Extension.java @@ -27,8 +27,9 @@ public StringBuilder one() { StringBuilder sb = new StringBuilder(); // 1. Using the sb variable above, add "Hello, world!" to the StringBuilder - // WRITE YOUR CODE BETWEEN THIS LINE... + // WRITE YOUR CODE BETWEEN THIS LINE... + sb.append(message).append(", world!"); // ...AND THIS LINE @@ -42,7 +43,8 @@ public StringBuilder two() { // 1. Using the sb variable above, add "Hello, world!" to the StringBuilder // 2. After adding the message, use an appropriate StringBuilder method to reverse it // WRITE YOUR CODE BETWEEN THIS LINE... - + StringBuilder mess = sb.append(message).append(", world!"); + sb = mess.reverse(); // ...AND THIS LINE @@ -57,7 +59,8 @@ public StringBuilder three() { // 2. After adding the message, remove the comma. // WRITE YOUR CODE BETWEEN THIS LINE... - + StringBuilder mess = sb.append(message).append(", world!"); + sb = new StringBuilder(mess.toString().replace(",", "")); // ...AND THIS LINE @@ -70,8 +73,11 @@ public StringBuilder four() { // 1. Using the sb variable above, add "Hello, world!" to the StringBuilder // 2. After adding the message, replace the word "world" with the word "Java" // WRITE YOUR CODE BETWEEN THIS LINE... - - + StringBuilder mess = sb.append(message).append(", world!"); + int worldIndex = sb.indexOf("world"); + if (worldIndex != -1) { + sb.replace(worldIndex, worldIndex + "world".length(), "Java"); + } // ...AND THIS LINE