相关疑难解决方法(0)

你是否使用花括号进行额外的范围设计?

我的意思是除了在函数,类,if,while,switch,try-catch需要时使用它.

在我看到这个问题之前,我不知道可以这样做.

在上面的链接中,Eli提到"他们使用它来折叠代码的逻辑部分,这些逻辑部分不属于通常折叠起来的函数,类,循环等."

除了提到的那些之外还有什么其他用途?

使用花括号来限制变量的范围并仅在需要时扩展范围(在"需要访问"的基础上工作)是一个好主意吗?或者它真的很傻?

如何使用范围,以便您可以在不同的范围内使用相同的变量名称,但在相同的更大范围内?或者,重用相同的变量(如果你想使用相同的变量名)是更好的做法,并节省解除分配和分配(我想一些编译器可以对此进行优化?)?或者更好地使用不同的变量名称?

c++ java scope curly-braces

38
推荐指数
8
解决办法
9141
查看次数

为什么Java数组声明使用大括号?

我想知道为什么Java数组声明使用大括号而不是标准括号.如图所示.我想这可能需要进一步了解大括号,但这具体到我的议程上.

Object[] tableHeaders = {"Cars","Trucks","Tacos"};
Run Code Online (Sandbox Code Playgroud)

这是正确的,而不是.

Object[] tableHeaders = ("Cars","Trucks","Tacos");
Run Code Online (Sandbox Code Playgroud)

java arrays declaration curly-braces

6
推荐指数
2
解决办法
1万
查看次数

JSP代码中的括号

我有一个我正在处理的JSP页面,我对一些格式化/编码感到困惑.

有些部分很明显发生了什么:

<%
        if (.....)
        {
%>
      <input type=hidden name="blahblah" value="moreblah">
<%
        }
%>
Run Code Online (Sandbox Code Playgroud)

但现在我看到的部分我不知道它是如何工作/编译的:

<%
    {
        // do stuff here
        String sClass = "blahblah"
        if ( sClass.equals("") )
        {
            sClass = "blah";
        }
    }
%>
Run Code Online (Sandbox Code Playgroud)

在那些花括号的开头没有if或while或for或者任何东西.为什么要编译并生成一个好的jsp页面?

java jsp

3
推荐指数
1
解决办法
2914
查看次数

为什么没有编译时错误?奇怪 - Java

我有一个if语句检查一些值,并遇到一个奇怪的错误(不确定!).我的代码在语法上是不正确的,结果它产生了错误的结果,但是eclipse在编译时没有引发任何错误.为什么我的下面代码有效?

if((this.trackPointList.get(point).getTurnOutId().equals(seg.getSegRef().getTurnOut())) && seg.getSegRef().getKind().equals("arc")); // <---- See here I have semicolon
    {
       ... code to run ...
    }
Run Code Online (Sandbox Code Playgroud)

上面的代码只检查第一个条件并忽略,seg.getSegRef().getKind().equals("arc")但我想这应该在编译时引发一个问题,我是对的吗?我的逻辑工作一旦我通过逐行浏览调试它并找到了这个分号.如果有人可以解释,如果它是有效的语法,我将不胜感激.

请赐教!

java syntax if-statement coding-style

3
推荐指数
1
解决办法
162
查看次数

简单的java语法澄清

我从来没有学过Java,但是我需要理解下面这段代码的意思,主要问题是花括号:

/**
 *   This Universe uses the full HashLife algorithm.
 *   Since this algorithm takes large steps, we have to
 *   change how we increment the generation counter, as
 *   well as how we construct the root object.
 */
public class HashLifeTreeUniverse extends TreeUniverse {
   public void runStep() {
      while (root.level < 3 ||
             root.nw.population != root.nw.se.se.population ||
             root.ne.population != root.ne.sw.sw.population ||
             root.sw.population != root.sw.ne.ne.population ||
             root.se.population != root.se.nw.nw.population)
         root = root.expandUniverse() ;
      double stepSize = Math.pow(2.0, root.level-2) ;
      System.out.println("Taking …
Run Code Online (Sandbox Code Playgroud)

java

1
推荐指数
1
解决办法
84
查看次数