当前位置: 首页 > 面试题库 >

两个连续的代码{} {}块做什么?

房学文
2023-03-14
问题内容

我刚遇到以下问题。

if ( test ) {
    {
        // statements 1
    }
    {
        // statements 2
    }
}

这是我第一次看到这个。它是如何工作的?


问题答案:

它只是编写两个不同的代码块以隐藏局部变量。

从问题“ Java中的匿名代码块”的答案:

块限制变量范围。

public void foo()
{
    {
        int i = 10;
    }
    System.out.println(i); // Won't compile.
}

但是,实际上,如果您发现自己使用了这样的代码块,则可能是您要将其重构为方法的信号。



 类似资料:
  • 问题内容: 我不太确定这是什么意思或在做什么,有人可以详细说明吗? 问题答案: 它接受发送者引用的对象,并尝试将其转换为Player类型。Java对象是强类型的,这意味着您必须声明对象的类型。 如果发件人引用的对象不能转换为Player对象,则将为InvalidCast抛出异常。

  • 我有两个双数组: 我的循环结构如下所示: 我要做的是连续获取项目LatArr[0]和LonArr[0]<这样我就可以在lat1中使用LatArr[0],在lon1中使用LonArr[0]。此外,LatArr[1]应位于lat2,LonArr[1]应位于lon2 但此代码获取LatArr[0]。。[1] 。。和LonArr[0]。。[1] 。。两次每个元素打印两次 任何人都请纠正我的错误,我完全不希

  • 我需要使用FFMPEG随机选择时间(例如0:10),并将两个连续的帧保存为PNG。 产出: 问题 如何确定下一帧?帧率120/1意味着每秒120帧? 编辑 它能保证下一帧吗?还有其他办法吗?

  • 我正在建立一个CD管道。我正在计划它的自动化测试部分。我计划做UI、Web服务、安全性和性能测试。我有一个关于代码结构的问题。因此,我计划将测试与代码放在同一个repo中,然后对核心测试框架进行单独的repo。 回购产品 产品代码(项目) 集成测试(项目) 功能/e2e测试(项目) 用户界面测试(软件包) WebVC测试(软件包) 性能测试(套装) 秒。测试(包) 回购测试核心 UI测试框架代码(

  • 根据我的科学Java实验,相当于相当于 为什么Java允许这样做?它有什么实际应用吗? 这些语句都是空的吗?它们实际上在运行时占用了任何额外的流转时长吗?(我假设它们只是优化了?) 其他语言也这样做吗?我猜这是从C继承的东西,就像Java中的很多东西一样。这是真的吗?

  • 问题内容: 我试图进行搜索并弄清楚它是如何工作的,但是我很难找到一个解释。 如果我的变量类型为() 怎么办?我知道接口可以代表很多事情,但是他在这里发生的事情的高层概述是什么? 问题答案: 这是一个类型断言: 类型断言提供对接口值的基础具体值的访问。 https://tour.golang.org/methods/15 如果该断言不成立,则会引发恐慌。要测试该值是否为特定类型T,可以使用以下命令: