以下是在 Python 控制台中输入的一些数字,以及结果表示:
>>> 1
1
>>> 1.234
1.234
>>> 1.234e5
123400.0
>>> 1.234e15
1234000000000000.0
>>> 1.234e25
1.234e+25
Run Code Online (Sandbox Code Playgroud)
...当打印相同的数字时会发生以下情况:
>>> print 1
1
>>> print 1.234
1.234
>>> print 1.234e5
123400.0
>>> print 1.234e15
1.234e+15 # different!
>>> print 1.234e25
1.234e+25
Run Code Online (Sandbox Code Playgroud)
Python 如何决定使用哪种表示?为什么print有些数字有和没有不同?
我有一个使用 Maven“快速启动”模板构建的 java 项目。结构看起来像
src
main
java
myapp
HelloWorld.java
Run Code Online (Sandbox Code Playgroud)
HelloWorld.java 被声明在包“myapp”下
在 pom.xml 中,仅包含 junit。
现在,在运行 Maven 编译后,我在下面得到了一个类文件
target
classes
myapp
HelloWorld.class
Run Code Online (Sandbox Code Playgroud)
但在我 cd 到 target/classes/myapp 后,然后执行
java -cp . HelloWorld
Run Code Online (Sandbox Code Playgroud)
我得到 NoClassDefFoundError,我按照如何从命令行执行 java .class 进行操作
我试过
java -cp . myapp.HelloWorld (myapp is the package)
Run Code Online (Sandbox Code Playgroud)
我仍然得到“无法找到或加载主类”
我的问题是:我使用“-cp .”设置类路径,那么为什么我仍然无法运行该类?和Maven有什么关系吗?
我知道我不需要使用命令行,我只是好奇。
我尝试将现有的 avro 文件转换为 parquet。但输出的镶木地板文件是空的。我不确定我做错了什么......
我的代码片段:
FileReader<GenericRecord> fileReader = DataFileReader.openReader(
new File("output/users.avro"), new GenericDatumReader<GenericRecord>());
Schema avroSchema = fileReader.getSchema();
// generate the corresponding Parquet schema
MessageType parquetSchema = new AvroSchemaConverter().convert(avroSchema);
// choose compression scheme
CompressionCodecName compressionCodecName = CompressionCodecName.UNCOMPRESSED;
// set Parquet file block size and page size values
int pageSize = 64 * 1024;
Path outputPath = new Path("output/users.parquet");
// create a parquet writer using builder
ParquetWriter parquetWriter = (ParquetWriter) AvroParquetWriter.builder(outputPath)
.withSchema(avroSchema)
.withCompressionCodec(compressionCodecName)
.withPageSize(pageSize)
.build();
// read avro, write parquet
while (fileReader.hasNext()) …Run Code Online (Sandbox Code Playgroud) 我有 2 个数据库:db 1 和 db 2
我需要根据 db 2 中的表是否存在对 db 1 采取不同的操作,并且我正在使用 liquibase 来记录我的操作。
这是我到目前为止的解决方案
<preconditions onFail="CONTINUE">
<sqlcheck expectedResult="1">
IF EXISTS (SELECT 1 FROM DB2.INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'MY_TABLE')
SELECT 1 ELSE SELECT 0
</sqlCheck>
</precondition>
Run Code Online (Sandbox Code Playgroud)
问题是:这是mssql语法,如果我尝试使用不同的数据库,我需要更改为使用不同的语法,那么做这样的事情的最佳方法是什么?