What is the primary difference between Runnable and Callable interfaces?
- Callable can be scheduled for future execution.
- Callable can run without being wrapped in a thread.
- Runnable allows returning a result.
- Runnable can be used for multi-threading.
The primary difference between Runnable and Callable interfaces is that Callable allows you to return a result from the computation, whereas Runnable does not. Callable is typically used when you need a result from a task that can be scheduled for future execution, while Runnable is a simple interface for a task that does not return a result.
The ________ method in the Stream API returns an equivalent stream that is sequential.
- filter
- map
- parallel
- sequential
In the Stream API of Java, the sequential() method is used to return an equivalent stream that is sequential in nature. This method can be useful when you want to ensure that subsequent operations on the stream are executed in a sequential order.
In Java, a variable declared within a method is referred to as a ________ variable.
- Global
- Instance
- Local
- Static
In Java, a variable declared within a method is referred to as a "Local" variable. Local variables are defined within a method and are only accessible within that method's scope. They are used for temporary storage and are typically used to store intermediate results or data specific to a method.
Which arithmetic operator is used to calculate the remainder in JavaScript?
- % (Modulus)
- / (Division)
- * (Multiplication)
- + (Addition)
In JavaScript, the % (Modulus) operator is used to calculate the remainder of a division operation. For example, 7 % 3 equals 1 because when 7 is divided by 3, the remainder is 1.
Which of the following is NOT a characteristic of closures in JavaScript?
- Data encapsulation and privacy
- Persistence of local variables
- Ability to access outer variables
- Limited use of memory resources
Closures in JavaScript are powerful because they allow functions to remember and access their outer (enclosing) variables even after the outer function has finished executing. This feature can lead to memory usage if not managed properly, but it's not a limitation or disadvantage of closures per se.
The ______ statement is used to specify a new condition to test if the first condition is false.
- else if
- else
- if else
- switch
The else if statement is used to specify a new condition to test if the first condition in an if statement is false. It allows for branching in code execution based on multiple conditions. It's a fundamental control structure in JavaScript.
You're debugging a piece of code that is returning an array in an unexpected order after a sort() method is applied. What could be a likely cause for this behavior given the default behavior of sort()?
- The array has mixed data types
- The sort() function is asynchronous
- The array elements are all numbers
- The array elements are strings
JavaScript's sort() method by default converts elements to strings and then compares their UTF-16 code units. This means that if the array contains mixed data types, the sorting order might be unexpected. For proper sorting, you should provide a compare function as an argument to sort().
A piece of code is unexpectedly returning -Infinity. What arithmetic operation could be causing this?
- Division (/)
- Addition (+)
- Exponentiation (**)
- Multiplication (*)
When a piece of code returns -Infinity, it is usually due to a division operation where you are dividing a finite number by zero. In JavaScript, dividing any finite number by zero results in -Infinity. Make sure to handle cases where division by zero can occur to prevent unexpected -Infinity values in your code.
When the interpreter encounters the following code var x = "5"; the typeof x will be _________.
- "string"
- "number"
- "boolean"
- "undefined"
In JavaScript, the typeof operator is used to determine the data type of a variable. When var x = "5"; is encountered, the value of x is a string because it is enclosed in double quotes. Therefore, typeof x will return "string". It's important to note that JavaScript is dynamically typed, meaning the type of a variable can change during runtime.
How can you add a method to an object in JavaScript?
- a) By using the Object.addMethod() method.
- b) By defining a function and assigning it as a property of the object.
- c) By using the Object.method() function.
- d) By using the object.method = function() syntax.
You can add a method to an object in JavaScript by defining a function and assigning it as a property of the object. For example, myObject.myMethod = function() { /* method code */ };. While you can use various patterns and techniques for method definition, there's no standard Object.addMethod() or Object.method() function.