Trending February 2024 # Top 5 Constructors Of Runtimeexception In Java # Suggested March 2024 # Top 6 Popular

You are reading the article Top 5 Constructors Of Runtimeexception In Java updated in February 2024 on the website We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested March 2024 Top 5 Constructors Of Runtimeexception In Java

Introduction to Java RuntimeException

Exceptions are the ones thrown when any error is encountered while running a code in Java. RuntimeException in java is the one which is called the parent class of all the exceptions in the Java programming language, which will either crash or break down during the execution of the program or the application as and when they occur. But as compared to other exceptions, these are different and cannot be caught by specifying in the code like for others.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

Working of RuntimeException in Java Constructors of RuntimeException in Java

Below are the constructors of RuntimeException:


public RuntimeException()

The cause here will not be initialized and can be done by calling to the class Throwable.initCause (java.lang.Throwable).

2. RuntimeException (String msg): This also throws a new runtime exception but has the defined detail message we have provided in the Java code.


public RuntimeException (String msg)

Same as the above function, the cause will not be initialized by default, and the same can be done by calling Throwable.initCause (java.lang.Throwable). The msg here is the detail message, which will be saved to retrieve later by the Throwable.getMessage () method.

3. RuntimeException (String msg, Throwable cause): This throws a new runtime exception with the defined error message and its cause.


public RuntimeException (String message, Throwable cause)

Note that the msg here is not automatically included and has to be specified explicitly. Here, the cause is fetched from the Throwable.getCause () function, and here a null value is allowed, which symbolises that its cause does not exist or is unknown.

4. RuntimeException (String msg, Throwable cause, booleanenableSupp, booleanwritableStack): This gives a new runtime exception with the described error message in detail, its specific cause, enableSupp representing whether its suppression has been enabled or disabled, and the writableStack being its stack trace if it is enabled or disabled.


protected RuntimeException (String message, Throwable cause, booleanenableSuppression, booleanwritableStackTrace)

This gives a new runtime exception with the defined cause and a specified detail message, its cause, whether the suppression is enabled or disabled, and if the writable stack trace has been enabled or not. The message here is the specific message we are displaying, the cause indicating whether it exists or not, enableSuppression indicates whether suppression is allowed or not, and writableStackTrace specifies whether the stack trace should be writable or not.

5. RuntimeException (Throwable cause): This throws a new runtime exception with the given cause and specified detailed error message of the condition (cause==null ? null : cause.toString ()), which basically has the class and its particular cause message.


public RuntimeException (Throwable cause)

The cause is kept for later fetching by the Throwable.getCause () method, and when a null value is permitted, it indicates that its cause is not known.

How to Avoid RuntimeException in Java?

The method we do to avoid such exceptions is called exception handling. It is one of the most fundamental things a developer should keep in mind while coding as the entire code will be useless if an exception occurs and if it cannot handle the same.

We use certain clauses called the throw and throw to handle checked exceptions in Java. Runtime exceptions usually occur because of the input being given faulty and cause exceptions like ArrayIndexOutOfBoundsException, IllegalArgumentException, NumberFormatException or a NullPointerException. Including these errors in code, handling does not make any change, but it can be used for the aske of documentation as a good practice.

public class AuthenticateUser extends RuntimeException { public AuthenticateUser (String msg) { super (msg); } } Examples

Below are the examples of 4 major kinds of Runtime exceptions:

Example #1 – ArrayIndexOutOfBoundsException

This occurs when we request an index value of an array that is invalid or not available.


public class Main { public static void main (String[] args) { intip[] = {16, 17, 18, 19, 20}; for (inti=0; i<=ip.length; i++) System.out.println (ip[i]); } }


As seen in this example, in the input array has its index value from 0 to 4. But in this for loop, the length of the array retrieved will be 5, and when that is tried to access in the array, it will throw the ArrayIndexOutOfBoundsException during RunTime of the code.

Example #2 – IllegalArgumentException

The cause of this exception is when the argument format provided is invalid.


public class Main { inti; public void getMark (int score) { throw new IllegalArgumentException (Integer.toString (score)); else i = score; } public static void main (String[] args) { Main t = new Main (); t.getMark (30); System.out.println (t.i); Main t1 = new Main (); t1.getMark (120); System.out.println (t1.i); } }


Example #3 – NumberFormatException

This exception is usually thrown when a string is to be converted to a numeric value like either float or integer value, but the form of the string given as input is either illegal or inappropriate.


public class Main { public static void main (String[] args) { inti = Integer.parseInt (null); } }


In this example, we are giving the input string to be parsed into an integer as null. Hence the number format exception is thrown.

Example #4 – NullPointerException

This exception occurs when a reference object that the variable is referring to is null.


public class Main { public static void main (String[] args) { Object reference = null; reference.toString (); } }


In this example, we are creating an object called reference having a null value. The same object is being called for an operation, and hence this error is thrown.

Conclusion: Runtime exceptions are thrown at runtime and hence difficult to be detected during compile time. They are difficult to handle, and the throws clause can only be used to define them but not catch them.

Recommended Article

This is a guide to Java RuntimeException. Here we discuss the Introduction and how to Avoid RuntimeException in Java, and it’s Working along with its examples. You can also go through our other suggested articles to learn more –

You're reading Top 5 Constructors Of Runtimeexception In Java

5 Major Methods Of Localdatetime In Java

Introduction to Java LocalDateTime

LocalDateTime in java displays the local date and time on the output screen. The default format for displaying the time is YYYY-MM-DD-hh-mm-ss-zzz. The different factors in showing the date and time are the year, month, day, hours, minutes, seconds, and nanoseconds. The date and time can be added to a particular number of days, subtracted by a number of days, and finally, the output can be produced very smoothly. The LocalDateTime class is a final class; hence, no extension of the class is allowed. LocalDateTime class is a value-based class used to check whether two dates and times are equal to each other or not with equals().

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

Syntax of Java LocalDateTime

The Java LocalDateTime class is a part of chúng tôi package. We can create the java instance of the class in the following manner.

import java.time.LocalDateTime;

We can also pass values to the of() in the LocalDateTime class.

The syntax of the following is given below:

LocalDateTime Idt= LocalDateTime.of(2011,15,6,6,30,50,100000);

We can also use the parse() and pass the values of the time in String representation.

LocalDateTime Idt= LocalDateTime.parse("2011-11-10T22:11:03.46045");

Also, we can use ofInstant() by passing ID and Zone ID information.

LocalDateTime Idt= LocalDateTime.ofInstant(, ZoneId.SystemDefault()); Methods of LocalDateTime in Java

There are different methods in the Java LocalDateTime class.

String format(DateTimeFormatter formatter): Used to format the date and time using the specified formatter.

LocalDateTime minusDays(long days): Used to format the date and time using specific days, which are to be subtracted from the respective date.

LocalDateTime plusDays(long days): Used to add a certain number of days to the current date and then print the output respectively.

int get(TemporalField field): Used to get the date and time values as an integer format that is int.

static LocalDateTime now(): We use this method to retrieve the default date and time from the current time zone, which serves as the default time zone.

Examples of Java LocalDateTime

Given below are the examples mentioned:

Example #1

In the first coding example, we will witness the format() used in java to format a specific amount of code.


import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class LocalDateTimeExample { public static void main(String[] args) { LocalDateTime now =; System.out.println("Before doing Formatting: " + now); DateTimeFormatter format = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); String fDTime = now.format(format); System.out.println("After doing Formatting: " + fDTime); } }


As shown in the sample output, we can see that the date and time before and after formatting have been shown.

Example #2

In the second program, we will see the working of the minusDays() when a certain date subtracts up certain values of days from the date and then finally prints the specific output.


import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class LocalDateTimeExample2 { public static void main(String[] args) { LocalDateTime dt1 = LocalDateTime.of(2024, 2, 14, 15, 22); LocalDateTime dt2 = dt1.minusDays(100); System.out.println("Before Formatting: " + dt2); DateTimeFormatter format = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm"); String fDTime = dt2.format(format); System.out.println("After Formatting: " + fDTime ); } }


Example #3

The plusDays() function is highly similar to the minusDays() function, with the only distinction being that it adds days to the current date instead of subtracting a specific number of days. So in this coding example, we will add a certain number of days to the existing date and time.


import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class LocalDateTimeExample3 { public static void main(String[] args) { LocalDateTime dt1 = LocalDateTime.of(2024, 1, 8, 12, 34); LocalDateTime dt2 = dt1.plusDays(60); System.out.println("Before Formatting: " + dt2); DateTimeFormatter format = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm"); String fDTime = dt2.format(format); System.out.println("After Formatting: " + fDTime ); } }

In this sample code, we give the date as 8th January 2023 in the default date provided. And we see the added days, that is, 60 days. When we add 60 days to the code, we see that the date has changed, and it has been 9th March 2023. Time has remained the same. Only the number of days has changed, moving the date from 8th January to 9th March.


Example #4

In this coding example, we will see the features of the get(), where we will get the integer values of the date and time, respectively. We will also see a coding example to illustrate the program properly.

import java.time.LocalDateTime; import java.time.temporal.ChronoField; public class LocalDateTimeExample4 { public static void main(String[] args) { LocalDateTime b = LocalDateTime.of(2024, 3, 10, 14, 36); System.out.println(b.get(ChronoField.DAY_OF_WEEK)); System.out.println(b.get(ChronoField.DAY_OF_YEAR)); System.out.println(b.get(ChronoField.DAY_OF_MONTH)); System.out.println(b.get(ChronoField.HOUR_OF_DAY)); System.out.println(b.get(ChronoField.MINUTE_OF_DAY)); } }

The sample code gives the Day of the Week, Day of the Year, Day of the Month, Hour of the day, and Minute of the day in chronological order. The program calls the ChronoField package to ensure that it runs correctly and produces the specific output as required.


Example #5

In this coding example, we will see the now() in the LocalDateTime class in Java programming language. This program will return the current date and time along with the seconds in the program.


import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; public class LocalDateTimeExample5 { public static void main(String[] args) { LocalDateTime dt1 =; DateTimeFormatter format = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); String fDTime = dt1.format(format); System.out.println(fDTime); } }


The output clearly displays the date and time of the current time zone in the format of hh-mm-ss, providing a clear representation.


This article has seen several programs illustrating all the methods and functions inside the LocalDateTime class. Also, we know the syntax of the LocalDateTime class that is present. Beyond this, we also notice the output of several programs. In aeronautical engineering, professionals frequently utilize the LocalDateTime class to maintain and monitor an aircraft’s current date and time, observing any changes in time zones and their impact on the watch time.

Recommended Articles

This is a guide to Java LocalDateTime. Here we discuss the introduction, the LocalDateTime methods, and different examples and their code implementation. You may also look at the following articles to learn more –

Top 5 Challenges Of Enterprise Seo

What makes enterprise SEO unique from a general knowledge in SEO?

The complexities.

A larger company has the technical challenges of a complex site architecture to getting budget for the tools and help needed to be successful.

I have seen many SEO professionals come from consulting or agency environments who have strong technical, content, and general knowledge of SEO.

What they lack, however, is the ability to work with other teams or understand the complexities that enterprise organizations face.

Without the experience of working in-house in such an environment, any SEO professional will struggle to gain credibility or make any sort of impact – resulting in a stagnant outcome with no signs of growth.

Here are the top five challenges any SEO might face when working in an enterprise environment:

Complex technical challenges.

Getting buy-in.

Priority for the business.

Tracking effectiveness.

Budget for tools/help.

If you can navigate through these challenges then support from the organization – all the way from the top down – will become strong, allowing for the overall health of the company’s SEO to flourish.

1. Complex Technical Challenges for SEO

When it comes to technical SEO for enterprise organizations, the level of complexity increases tenfold.

Sites that don’t focus on the technical aspects of SEO will often fall short no matter how excellent content, brand recognition, or link authority is.

When a site has 90% of its pages throwing errors around redirect chains, improper or self canonicals, duplicate titles, JavaScript issues, etc. are less likely to get results than their competitors who have only 20% (or less) of those issues.

New projects that are launched are less likely to gain traction in the search results or may struggle to ever get indexed at all.

Larger organizations consist of multiple engineering teams working on several aspects to a site and often on different platforms.

When entering into an enterprise environment, it’s good to understand that your first few months are going to be about learning:

How a site is structured.

How the engineering teams work.

How SEO can play a part.

From the use of subdomains/subdirectories, pushing chúng tôi files, generating chúng tôi identifying pages that need or have noindex tags, pagination, JavaScript implementation, how canonical tags are generated, pagination, infinite scrolling, Ajax calls, and so much more.

All of this may be common knowledge, however, working in the enterprise environment with a large site managed by multiple stakeholders that have business decisions that could impact SEO adds a level of complexity that is a challenge to navigate.

When dealing with the complexities of technical SEO in an enterprise environment, an SEO must not only be knowledgeable but be willing to listen.

A strong enterprise SEO can look at data, analyze crawl reports and web logs, and know who to talk to in order to understand the history of the work that has been done for SEO.

A good SEO should be able to make authoritative decisions while maintaining humbleness as trial and error tests present the best results.

By focusing 30% of the team’s effort on technical SEO fixes and mitigating additional issues, an enterprise site will have greater success.

2. Getting Buy-in

Ask any SEO and they will tell you how obvious it is why companies should invest time and money into SEO.

With a little effort from engineering, some tweaking by the content teams, and a small investment in SEO experts any company could make money with very little overhead.

Unfortunately, not all organizations see it that way.

Whether it’s a lack of understanding of what SEO is or what all that goes into SEO companies don’t often see it as a worthy investment.

SEO professionals should know that working within an organization doesn’t make it any easier to get work done for SEO.

Calendars could be filled with meetings all day but a discussion might come up in a meeting where stakeholders decide that SEO isn’t important and the SEO wasn’t in the room.

Later they find out that after a project was launched the company could have benefited greatly from considering SEO.

The key to getting buy-in for SEO is for an SEO to get to know as many people as possible in the organization from the top down.

Even when it doesn’t seem like someone will ever need or ever work with SEO, it’s still good to get to know them and their role.

One of those people could be in a meeting the SEO is left out of when a group decides that they don’t need SEO. In which case they would be able to speak up for SEO in their absence.

Additionally, any successes the team can have for SEO are always a good way to get organizational buy-in.

Find some pages or a section of the website that could use some changes to help improve SEO and report on the growth that you have accomplished.

This will show stakeholders and decision-makers that some work for SEO can increase traffic and revenue.

They will have more respect for SEO as well as the team that works on SEO and will want the same for their projects and responsibilities.

Getting buy-in from key stakeholders on what it takes to get work done for SEO is one of the biggest struggles any SEO faces in a larger organization.

From convincing the CEO that SEO can increase the bottom line, all the way down to getting engineering teams to spend the time to make their JavaScript crawlable by Google, SEO pros can spend a lot of time getting buy-in.

3. Priority for the Business

I will, at times, refer to SEO as the red-headed stepchild (a phrase used to describe a person who is neglected, mistreated, or unwanted) of the business.

Many companies know that they can benefit from SEO, but don’t understand enough about it to make it a priority.

Organizations that end up in this hole of lack of support, or understanding for SEO, have a difficult time digging themselves out and therefore reaping any benefit from SEO.

While getting stakeholders to buy-into SEO, it’s also important to push to establish SEO as one of the important priorities for the business as a whole.

By communicating with the business showing small, or even large, wins a team can establish SEO as a priority and align with what the business has planned for.

Aligning with the business isn’t always an easy task, and not all organizations are transparent when it comes to communicating what is a priority to the SEO level.

By focusing on getting to know teams and stakeholders within the organization the SEO team could become part of the conversation when there are talks about priorities for the business.

While getting SEO established as a priority for the business is a struggle, the benefits can be astronomical for both the business and the SEO team.

4. Tracking Effectiveness

Many times I have worked with agencies that report on their wins by showing keywords that have moved up in rankings, or pages they have worked on appearing higher in the search results.

The biggest struggle that SEO will often have within a large organization is reporting. Most enterprise businesses expect SEO to impact revenue.

While ranking changes and increases in traffic are nice, everything boils down to how much the company makes.

Tracking keywords to revenue is virtually impossible.

Calculating can be a complex estimation based on formulas with an understanding of what pages showed up for which keyword searches, with a count of keywords to that page, cut by percentages of Google traffic from organic from how much that page generated in revenue.

It’s a formula that isn’t always doable for each business, especially in times where there are multiple pages that appear in search results for a keyword.

The best way to track SEO’s effectiveness is to understand what is important for the business.

Some businesses are happy with free signups and might have a revenue value associated with them.

Working with data scientists and understanding hurdles associated when reporting for SEO is one of the biggest struggles an SEO faces in a larger organization.

5. Budget for Tools/Help

One of the biggest struggles I have faced in all my years as an SEO and working for many enterprise organizations is getting support and budget to hire help (agencies, consultants, or staff) and the tools needed that can handle large complex systems.

Hiring agencies that have the technical knowledge, experience, and understanding of what it takes to manage SEO for large organizations are few and far in-between, and they don’t come cheap.

Getting budget support for the expert help needed takes a lot of hard work and scrappiness from the SEO (or team) that is in place.

SEO professionals shouldn’t be expected to know everything there is to know about all aspects of SEO.

Some are more versed in content, or some may be more technically savvy.

Some may have a good sense for navigating the red tape of the organization but aren’t strong in content or technical. In that case, hiring a consultant or an agency to help to make the team even stronger would lead the business into a strong SEO presence.

The best way to approach this is for the existing team to not be afraid to speak up and let their coworkers know when they aren’t strong in an aspect of SEO.

Most organizations will respect this and support the hiring of an agency or consultant that specializes in that part that is lacking.

If SEO has shown wins from technical fixes and mitigation then an expert or agency that can help put a content roadmap together with a growth plan would make sense.

The key is to show stakeholders that there can be success with one aspect of SEO and that there is potential for growth from others. In the end, everyone will benefit.

At the enterprise level, well-known tools like Moz, DeepCrawl, and Keylime Toolbox aren’t able to handle the complexities or the massiveness of enterprise sites.

For larger organizations, tools that are capable of handling complex sites, and that have the staff of support that know what SEO professionals at that level face, require big budgets.

Getting budget approval for these tools can often be a struggle, but when the support comes in and the tools are being utilized, SEO greatly benefits in the long term.

The key is to start small with the more widely known tools and focus on a smaller part of a site.

Use the data found to gain some wins while expressing that there are tools that are helping, but there are struggles due to their limited capabilities to manage larger sites.

When SEO brings in several billion in revenue for a business and the team is asking for a tool that is a very small fraction of that, the return on investment makes sense.


The challenges that enterprise SEO professionals face are definitely unique.

But these aren’t impossible impossible to overcome.

By understanding that enterprise SEO has its own struggles and having the patience and experience to navigate through them, any SEO in a larger organization can have a successful career and the business will benefit in the long run.

Featured Image Credit: Paulo Bobita

Learn The Working Of Async In Java With Features

Introduction to Java async

Web development, programming languages, Software testing & others

Working of async in java

In this article, we will discuss a callback method which is known as the async function in java. This function is also known as await in java. In java, to make or write asynchronous programming by starting a new thread by making it asynchronous themselves. The asynchronous callbacks are used only when the tasks are not dependent on each other, which might take some time for executing. So, in general, the async call can be explained by taking an example of online shopping where when we select some item and add it into the cart, then that item will not be blocked as it will also be available to others too where others don’t need to wait for the order of the item to finish. So, whenever we want to run any program that can be executed without blocking its execution, it is done using async programming.

1. completeableFutures

The completeableFutures is the java version of javascript promises known as completeableFutures which can implement two interfaces such as Future and CompletionStage, where a combination of these two interfaces completes this feature for writing or working with async programming. This feature provides many methods such as supplyAsync, runAsync, etc. These methods are used to start the asynchronous part of the code because supplyAsync method is used when we are doing something with the result, and if we do not want anything, we can use the runAsync method. There other different methods in completeableFutures such as thenCompose if we want to use multiple completeableFutures one after one or in simple when we want to use nested completeableFutures and if we want to combine the results of two completeableFutures, then there is a method named thenCombine method. So these all methods are handled in a completable future, which in turn has completion stage methods that hold all these methods.

Sample example: To create completeableFuture using no-arg constructor by the following syntax:

So to get the result, we have to use the get() method. So we can write it as

String result = completeableFuture.get()  where this gets () method will block until the Future completes, but this call will block it forever as Future is never completed. So we have to complete it manually by calling the below method.

Therefore the clients get specified results ignoring the subsequent calls. The program might look like below.

while (!completableFuture.isDone()) { System.out.println(“CompletableFuture is not finished yet…”); } long result = completableFuture.get();

2. EA Async

This is another feature in java for writing asynchronous code sequentially, which naturally provides easy programming and scales. This is Electronic Arts which got the async-await feature which is given to the java ecosystem through this ea-async library. This feature converts the runtime code and rewrites the call to await method, which works similarly as completableFuture. So we can implement the above completeableFuture code by using the EA-sync method known as the await method by making a call to the chúng tôi method for initializing Async runtime.

So let us consider an example of factorial of a number using both completeableFuture and EA sync.

while (!completableFuture.isDone()) { System.out.println(“The completeableFuture is not completed…”); } double res = completableFuture.get();

static { Async.init(); } public func_name(){….. same as above code of completeableFuture… double res Async.await(completableFuture);

From the above sample code, which is transformed code of completeableFuture code by using static block also for initializing the Async runtime so that the Async can transform the code of completeableFuture code during runtime and then to the await method, it can rewrite the calls which will now EA async will behave similarly to that of using the chain of completeableFuture or chúng tôi method. So now, when once the asynchronous execution of any method is completed, then the result from the Future method is passed to another method where the method is having the last execution using the CompleteableFuture.runAsync method.

In Java, as discussed above, there are many different ways for writing the asynchronous programming using various other methods.


In this article, we discussed java async where it is defined as a callback method that will continue the execution of the program without blocking by returning the calls to the callback function. This article saw how asynchronous programming is written in java using different features such as CompleteableFutures, EA async, Future Task, Guava, etc. In this article, we have seen two among these features for making the callback functions asynchronous by using various methods provided by the given respective features.

Recommended Articles

This is a guide to Java async. Here we discuss how asynchronous programming is written in java using different features such as CompleteableFutures, EA async, Future Task, Guava, etc. You may also have a look at the following articles to learn more –

Find Array Using Different Xors Of Elements In Groups Of Size 4 In Java

We are given with an integer array of size N(size of multiple 4) and we have to perform Xclusive OR operation on the array such that input[1- 4] resembles utility_arr[1- 4] and the conditions of computing is If arr[1 – 4] = {a1, a2, a3, a4} then q[1 – 4] = {a1 ⊕ a2 ⊕ a3, a1 ⊕ a2 ⊕ a4, a1 ⊕ a3 ⊕ a4, a2 ⊕ a3 ⊕ a4}

Let us see various input output scenarios for this –

In − int[] input = { 5, 2, 3, 4 };

Out − Result after XOR operation 4 3 2 5

Explanation −An Exclusive-OR gate’s output only goes “HIGH” when both of its input terminals are at “DIFFERENT” logic levels from one another. The output is a “0” if these two inputs, A and B, are both at logic level “1” or “0,” making the gate a “odd but not the even gate.” In other words, when the inputs have an odd number of 1s, the output is “1.”

a1 ⊕ a2 ⊕ a3 = 5 ⊕ 2 ⊕ 3 = 4

a1 ⊕ a2 ⊕ a4 = 5 ⊕ 2 ⊕ 4 = 3

a1 ⊕ a3 ⊕ a4 = 5⊕ 3 ⊕ 4 = 2

a2 ⊕ a3 ⊕ a4 = 2 ⊕ 3 ⊕ 4 = 5

In − int[] input = { 7, 6, 4, 4, 3, 8, 9, 5 };

Out − Result after XOR operations 5 5 7 6 2 14 15 4

Explanation − An Exclusive-OR gate’s output only goes “HIGH” when both of its input terminals are at “DIFFERENT” logic levels from one another. The output is a “0” if these two inputs, A and B, are both at logic level “1” or “0,” making the gate a “odd but not the even gate.” In other words, when the inputs have an odd number of 1s, the output is “1.” Will only work for input[] of size multiples of 4, other sized input arrays will show 0s in place of odd placed numbers.

Result after XOR operations 5 5 7 6 2 14 15 4 Approach used in the below program is as follows −

According to the properties of XOR a ⊕ a = 0 and a ⊕ 0 = a. (a ⊕ b ⊕ c) ⊕ (b ⊕ c ⊕ d) = a ⊕ d (As (b ⊕ c) ⊕ (b ⊕ c) = 0)

For computation the array is divided into groups of 4 and we will follow the properties of XOR to calculate the results of each group.

Taking reference from the above property using (a ⊕ d) we can calculate b and c (a ⊕ b ⊕ d) ⊕ (a ⊕ d) = b (a ⊕ c ⊕ d) ⊕ (a ⊕ d) = c

And by using b and c we can get a and d by using the following approach (a ⊕ b ⊕ c) ⊕ (b) ⊕ (c) = a (b ⊕ c ⊕ d) ⊕ (b) ⊕ (c) = d

The process is repeated for all four groups

A loop is iterated with 2 pointers i and j till length of the array divided by four and a temp value(ans) and an utility array(which stores answers) is introduced.

Inside the for loop following xor operations are implemented

ans= input array[i] ⊕ input array[i+3]

Utility array[i+1](calculating b)= input array[i+1] ⊕ ans

Utility array[i+2](calculating c)= input array[i+2] ⊕ ans

Utility array[i](calculating a)= input array[i] ⊕ ((Utility array[i + 1]) ^ (Utility array[i + 2]))

Utility array[i](calculating d)= input array[i+3] ⊕ ((Utility array[i + 1]) ^ (Utility array[i + 2]))

And the pointer is updated for next set of four characters

Finally, the array is printed and the result is returned to the user.

Example import java.util.Arrays; import java.util.List; public class Tutorials{    static int ans = 0;    public static void main(String args[]){       int[] input = {7, 1, 2, 3};       int[] arr = new int[input.length];       for (int i = 0, j = 0; j < input.length / 4; j++){          ans = input[i] ^ input[i + 3];          arr[i + 1] = input[i + 1] ^ ans;          arr[i + 2] = input[i + 2] ^ ans;          arr[i] = input[i] ^ ((arr[i + 1]) ^ (arr[i + 2]));          arr[i + 3] = input[i + 3] ^ (arr[i + 1] ^ arr[i + 2]);          i += 4;       }       System.out.println("Different XORs of elements in groups of size 4 is: ");       for (int i = 0; i < arr.length; i++){          System.out.println(arr[i]);       }    } } Output

If we run the above code it will generate the following Output

Different XORs of elements in groups of size 4 is : 4 5 6 0

Voice Of Customer (Voc) In 2023: Steps & Top 5 Use Cases

In the fourth quarter of 2023, customer satisfaction in the U.S. was ~73% (See Figure 1). In today’s highly competitive business landscape, understanding customer data is more crucial than ever. One way to achieve this is by leveraging the Voice of Customer (VOC) methodology. This article will explore the concept of VOC, the steps in obtaining it, the top 6 data collection sources, and how to build a successful VOC program.

Source: American Customer Satisfaction Index

Figure 1. Change in customer satisfaction from 2000 to 2023 in the U.S.

What is the voice of the customer?

The Voice of Customer (VOC) is a research method that helps businesses capture and analyze customer needs, preferences, and expectations. In essence, VOC data

Enables companies to be more customer-centric

Heightens customer satisfaction

Ensures brand loyalty

Increases customer retention.

Top 6 data collection sources to listen to the voice of the customer (VOC) Surveys

Create targeted surveys to gather feedback on specific aspects of your products or services. Online survey platforms make it easy to distribute and analyze surveys efficiently. According to research, 89% of marketers relied on online surveys to gather customer feedback in 2023.

Customer interviews

Conduct phone calls, online or face-to-face in-depth interviews with customers to better understand their needs, preferences, and experiences. By gathering direct feedback, you can understand customer pain points.

Focus groups

Assemble small groups of customers to discuss and share their thoughts on your products or services in a guided setting.

Social media monitoring

Monitor social media platforms for mentions of your brand and products, gathering valuable customer feedback and sentiment data. Especially negative feedback can be closely monitored to resolve any inconvenience.

Customer support channels

Analyze customer support phone calls, emails, and customer service chatbots to identify common issues and areas for improvement. This helps provide exceptional customer service.

Online customer reviews

Collect feedback from customers who have shared their experiences with your products or services through online reviews on websites or blogs.

What are the steps in obtaining the voice of the customer? 1- Set objectives

Start by defining the goals and purposes of your VOC initiative. Determine what insights you hope to gain from your customers and how this knowledge can be harnessed to benefit your business.

2- Segment customers

Break down your customer base into smaller segments, taking into account factors such as demographics, behaviors, or other relevant criteria. This approach allows you to target your efforts more effectively and collect representative feedback.

3- Select data collection methods

Based on your objectives and customer segments, choose suitable data collection methods. This may involve a combination of qualitative and quantitative approaches.

Check our comprehensive article to learn more about the essential steps in analyzing feedback.

4- Gather data

Implement your chosen data collection methods, making sure to obtain feedback from a diverse and representative customer sample.

5- Analyze data

Examine the data collected, identifying patterns, trends, and insights that can inform your business decisions.

6- Enact changes

Utilize the insights from your analysis to improve your products, services, and overall customer experience.

7- Monitor & iterate

Regularly measure the impact of your changes and make additional improvements as needed. Continuously reassess your VOC program to ensure it remains effective and relevant.

Top 5 Voice of Customer (VOC) use cases  1- Personalized marketing campaigns

Businesses are able to develop individualized marketing efforts that appeal to their target market by evaluating VOC data, and they can divide their customers into groups depending on their preferences, behaviors, and demographics. With the help of this information, customized messages, offers, and promotions can be created that can increase customer loyalty and conversion rates while also increasing engagement.

2- Customer experience optimization

Throughout the customer journey, VOC assists firms in identifying and addressing consumer pain points. Businesses can identify areas for improvement in their core products, website navigation, and customer support procedures by examining customer feedback and behavioral data. A more smooth and satisfying customer experience can be achieved by implementing adjustments based on these insights, which can promote brand loyalty and repeat purchases.

3- Predictive analytics for customer retention

Businesses employ VOC data in predictive analytics models to find at-risk clients and proactively solve their issues. Businesses can create focused retention strategies, increasing overall customer satisfaction and lowering attrition rates by identifying the variables that cause customer churn.

4- Competitive analysis 5- Brand monitoring

Businesses may track their brand reputation in real-time using VOC data. Companies can quickly spot trends in consumer feedback especially using AI-powered customer feedback tools, allowing them to address issues and capitalize on positive feedback. This proactive method of brand monitoring can assist companies in keeping a strong online presence and improving consumer loyalty.

If you are interested, you can also check our benchmarking study on customer feedback tools.

If you have any questions about the voice of customer, don’t hesitate to contact us:

Begüm Yılmaz

Begüm is an Industry Analyst at AIMultiple. She holds a bachelor’s degree from Bogazici University and specializes in sentiment analysis, survey research, and content writing services.





Update the detailed information about Top 5 Constructors Of Runtimeexception In Java on the website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!