Android Remove useless curly braces around statement (sonar.java.source not set. Assuming 8 or greater.)
时间: 2024-03-27 22:38:10 浏览: 154
这是一个 SonarLint 的提示,意思是在 Android 代码中移除无用的花括号。
在 Java 8 及更高版本中,可以在 if、else、for、while 等语句中省略花括号,只有一条语句时可以直接写在语句后面。
例如,下面的代码:
```
if (condition) {
statement;
}
```
可以简化为:
```
if (condition)
statement;
```
但是,如果 if、else、for、while 等语句后面有多条语句,就必须使用花括号将这些语句括起来,例如:
```
if (condition) {
statement1;
statement2;
}
```
如果在这种情况下省略花括号,就会出现语法错误。
SonarLint 的提示建议尽可能简化代码,移除不必要的花括号,但是需要注意不要破坏代码的语法结构和可读性。
相关问题
Remove useless curly braces around statement (sonar.java.source not set. Assuming 8 or greater.)
这个提示说明在语句块中使用了不必要的花括号,例如:
```
if (condition) {
doSomething();
}
```
可以改为:
```
if (condition)
doSomething();
```
或者如果需要更清晰的语句块,可以将花括号保留:
```
if (condition) {
doSomething();
doSomethingElse();
}
```
另外,提示中提到了 sonar.java.source 未设置,这意味着 SonarQube 没有检测到您的 Java 代码使用的是哪个版本的语法规范。如果您使用的是 Java 8 或更高版本,可以忽略此提示。如果使用的是更早的版本,您可以在 Maven 或 Gradle 配置中设置 sonar.java.source 参数来指定语法规范版本,例如:
```
sonar.java.source=1.7
```
这样 SonarQube 就会根据您指定的版本来检测代码,而不是使用默认的 Java 8+ 语法规范。
import requests from lxml import etree import pandas as pd username_list=[] film_critic_list=[] useful_num_list=[] useless_num_list=[] assess_list=[] ttt_all_urls = [] for i in range(191): ttt_page_urls = f'https://movie.douban.com/subject/26430107/reviews?sort=hotest&start={i * 20}' headers={'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1823.41'} rq=requests.get(url=ttt_page_urls,headers=headers) dom1 = etree.HTML(rq.text) ttt_data = dom1.xpath('//*[@id="content"]/div/div[1]/div[1]/div/@data-cid') for i in ttt_data: a=dom1.xpath(f'//*[@id={i}]/div/h2/a/@href') ttt_all_urls.extend(a) for url1 in ttt_all_urls: for i in ttt_data: rq2 = requests.get(url=url1,headers=headers) dom2=etree.HTML(rq2.text) username= dom2.xpath(f'//*[@id={i}]/header/a[1]/span/text()') print(username) film_critic = dom2.xpath(f'//*[@id="link-report-{i}"]/div[1]/p/text()') useful_num = dom2.xpath(f'*[@id="review-{i}-content"]/div[3]/button[1]/text()') useless_num= dom2.xpath(f'*[@id="review-{i}-content"]/div[3]/button[2]/text()') assess = (dom2.xpath('//*[@id="content"]/div/div[1]/h1/span/text()')) username_list.extend(username) film_critic_list.extend(film_critic) useful_num_list.extend(useful_num) useless_num_list.extend(useless_num) assess_list.extend(assess) data={'username':username_list,'film_critic':film_critic_list,'useful_num':useful_num_list,'useless_num':useless_num_list,'assess':assess_list} df=pd.DataFrame(data) df.to_csv('fimldata.csv',encoding='utf-8',index=None)
这段代码的功能是爬取豆瓣电影《太空悍将》的影评信息,并将爬取到的数据保存到名为"fimldata.csv"的CSV文件中。具体来说,代码先构造了每一页的URL地址,然后通过requests库发送请求获取HTML页面。接着,使用lxml库中的etree模块对HTML页面进行解析,提取出每条影评的URL地址,并将这些地址保存到一个列表中。接下来,遍历所有影评的URL地址,再次使用requests和etree库对每个影评页面进行解析,提取出影评的作者、影评内容、有用数、无用数以及对应的电影名称。最后,将这些数据存储到一个字典中,并使用pandas库将字典转换为DataFrame格式后保存到CSV文件中。
阅读全文