This code does not compile due to an unreachable statement [closed] - java

Closed. This question is not reproducible or was caused by typos. It is not currently accepting answers.
This question was caused by a typo or a problem that can no longer be reproduced. While similar questions may be on-topic here, this one was resolved in a way less likely to help future readers.
Closed 6 years ago.
Improve this question
I've tried my utmost to reproduce this in another way, but it seems that only this line gives the error (please excuse the comment):
return foo.containsKey(MARKET_DATA) && !foo.get(MARKET_DATA).isMissing();/*mapping code can inject a Missing type*/;
However I type this it gives me an error: "unreachable statement". Why is this?

This is clear if you remove the comment:
return foo.containsKey(MARKET_DATA) && !foo.get(MARKET_DATA).isMissing();;
Note well the two semicolons at the end: empty statements are allowed in Java, but this particular empty statement is unreachable as the previous statement always returns.
(For the avoidance of doubt, a comment should not be terminated with a ;).

The issue is because of the ; after the comment:
/*mapping code can inject a Missing type*/;
The compiler thinks there is another statement after the return statement. If you delete the ; after the comment it will work fine (or put it inside the comment).

As per Java specs ; is a empty statement. So there is a statement after return

Related

Wonder about syntax and language for two code examples [closed]

Closed. This question is not reproducible or was caused by typos. It is not currently accepting answers.
This question was caused by a typo or a problem that can no longer be reproduced. While similar questions may be on-topic here, this one was resolved in a way less likely to help future readers.
Closed last month.
Improve this question
I watched a video about composition and inheritance.
In this video I saw two different examples of code syntax that I have not seen before.
Generally the code looks like java but I don't recognize these two code snippets.
Would appriciate if someone would explain what the code does and if the code is java or another language.
Thanks!
First code:
public void replacePixel(Pixel[,] pixels] {....}
Here it is the syntax [,] that is new to me.
What does it do?
Second code:
void saveClicked(){
file?.load(image);
}
Here is is the syntax ?.
What does it do?
Tried to use a online java compiler and the syntax did not seem to work.
public void replacePixel(Pixel[,] pixels) {....}
Im not sure if this is valid for Java, but in C#:
[,] here means that as an argument you want to get two-dimensional array. If you want three-dimensional array you can use [,,] and so on.
void saveClicked(){
file?.load(image);
}
Here ? is a conditional operator that says: if file is not null then do file.load(image). Otherwise, if file is null do nothing. This can be converted to:
void saveClicked(){
if(file != null){
file.load(image);
}
}

Invalid method declartion required return type, Java controller method [closed]

Closed. This question is not reproducible or was caused by typos. It is not currently accepting answers.
This question was caused by a typo or a problem that can no longer be reproduced. While similar questions may be on-topic here, this one was resolved in a way less likely to help future readers.
Closed 2 years ago.
Improve this question
I know that it may be a silly mistake but I am looking at this code for about 15 minutes and I cannot see nothing wrong. Besides I can continue to do my work with this error.
I have the following method
GetMapping("/pagina/imoveis-residenciais-venda")
------------------------------------------------- (red marker of error)
public List<Imovel> recuperarPaginaImoveisResidenciaisVenda(){
List<Imovel> imoveis = this.imovelRepositorio.recuperarPaginaImoveisResidenciaisVenda();
return imoveis;
}
And the following error message, as GetMapping is underlined with the red marker:
invalid method declaration, required return type
GetMapping is an annotation, and annotation must start with an # sign so your code should look like this
#GetMapping("/pagina/imoveis-residenciais-venda")
public List<Imovel> recuperarPaginaImoveisResidenciaisVenda(){
List<Imovel> imoveis = this.imovelRepositorio.recuperarPaginaImoveisResidenciaisVenda();
return imoveis;
}

Java reserved words as identifiers [closed]

Closed. This question is not reproducible or was caused by typos. It is not currently accepting answers.
This question was caused by a typo or a problem that can no longer be reproduced. While similar questions may be on-topic here, this one was resolved in a way less likely to help future readers.
Closed 7 years ago.
Improve this question
this is my first post here. I'm taking my first class in Java and I have come across a question which I believe is a trick question. I know that reserved words can't be used as identifiers and identifiers are only supposed to use upper/lowercase letters, 0-9, $, and _. long is a reserved word, but would using LONG be ok since Java is case sensitive? I have looked all over google for the answer for this. I could not find an answer on stack overflow so sorry if this is answered elsewhere on the forum!
Thanks!
I think you may have figured out by yourself that reserve words are also case sensitive when you say that Java is case sensitive.
Using LONG as identifier would not cause any problem for the Java compiler, but the problem is variable name LONG may not mean much and might not contribute to a readable code
The compiler will allow you to use LONG as an identifier.
Your fellow programmers, however, will try to hold you back.

What is wrong with my if-else syntax? [closed]

Closed. This question is not reproducible or was caused by typos. It is not currently accepting answers.
This question was caused by a typo or a problem that can no longer be reproduced. While similar questions may be on-topic here, this one was resolved in a way less likely to help future readers.
Closed 7 years ago.
Improve this question
Currently new to java, and right now I'm doing an assignment involving if else statements. Can someone please why javac is reading my else as dangling? My syntax should be right unless I am missing something here.
You have to remove your Semicolon after the if-statement. Otherwise the braces after the if are not executed.
I hope this will fix your Problem.
if(Statement);
{
//The Content would not be executed in realtion to the if-statemen
}
Otherwise:
if(Statement)
{
//The Content would be executed in realtion to the if-statemen
}
remove the semicolon(;) after the if statement
You have a semicolon after your if. Remove it.
You have to remove the ; at the end of the line starting with if.
change :
if(...);
{
////
}
to
if(...)
{
////
}

Strings in ternary operators interacting with numbers [closed]

Closed. This question is not reproducible or was caused by typos. It is not currently accepting answers.
This question was caused by a typo or a problem that can no longer be reproduced. While similar questions may be on-topic here, this one was resolved in a way less likely to help future readers.
Closed 8 years ago.
Improve this question
If I have an if statement that includes a string like this:
double GUInumber1 = ((GUInumber1 >= 0 || <= 0)? Double.parseDouble(GUIfirstNumber) : 0);
('GUIfirstNumber' is the string)
Why does it come up as a error? Do I need brackets somewhere, do I need to use 'If/else' instead?
Supposedly my compiler says it does not recognize or (||), is this supposed to be something else or does this work in a completely different way.
Any help on this situation would be appreciated, also, if you need to know or are just wondering why I want to make a if statement for a string its because whenever I try to put in a letter instead of a number Java crashes, I'm hoping I could get this to alternatively solve the situation instead.
EDIT:
Solved, had to remove 'or' statements and alternatively make more else statements instead.
This expression (GUInumber1 >= 0 || <= 0) is not correct.
You will need something on both sides of the <= operator.

Categories