问题列表 - 第318103页

在Java中将列表与单个元素连接到单个逻辑行中的正确方法?

在我的代码中,我有这个:

    private static final List<String> a = new ArrayList<String>() {{
        addAll(b);
        addAll(c);
        add(d);
        add(e);
    }};
Run Code Online (Sandbox Code Playgroud)

我在某些地方读到双括号语法创建了一个匿名类或其他东西,这是一种非常糟糕的语法。

由于这是一个静态最终变量,因此需要在单个逻辑行中设置它。

我找到了使用流在单行中连接列表的代码示例,但没有一个允许添加单个元素。

我正在寻找一种与 Java 8 兼容的语法,但(如果不同)仅与更高版本的 Java 兼容的更好语法也将受到欢迎。

java java-8

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

ruby ARGF 的类名很奇怪

这是一个 cruby bug 吗?

km@latika:~$ ruby -v -e 'puts nil.class.to_s, ARGF.class.to_s'
ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-linux-gnu]
NilClass
ARGF.class
km@latika:~$ jruby -v -e 'puts nil.class.to_s, ARGF.class.to_s'
jruby 9.3.9.0 (2.6.8) 2023-01-16 9.3.9.0+ds-8 OpenJDK 64-Bit Server VM 17.0.10+7-Debian-1deb12u1 on 17.0.10+7-Debian-1deb12u1 +jit [x86_64-linux]
NilClass
ARGFClass
Run Code Online (Sandbox Code Playgroud)

我在其他地方没有见过包含句点的类名......

ruby reflection

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

如何在 Haskell 中确定文件文本编码而不使用 openFile 获取句柄?

问题是 openFile 假定 UTF-8 并且句柄返回该编码作为编码。真正的问题是我正在获取(由学生)提交的以 UTF-16LE 编码的文件,我想要识别这些文件,因此我可以将它们转换为 UTF-8。这些文件实际上没有任何超出 ASCII 范围的内容,除了 BOM 标记(转换为 UTF-8 后会排序)。我尝试了以下方法:

fixFileEncoding fname =
  do hdl <- openFile fname ReadMode
     menc <- hGetEncoding hdl
     hClose hdl
     case menc of
       Nothing   ->  system ("cp "++fname++" safe"++fname)
       Just enc  -> 
         do let encstr = show enc
            putStrLn ("@@@@@@" ++ fname ++ " is "++encstr)
            if take 6 encstr == "UTF-16"
            then 
              system ("iconv -f UTF-16LE -t UTF-8 "++fname++" > safe"++fname)
            else 
              system ("cp "++fname++" safe"++fname)

Run Code Online (Sandbox Code Playgroud)

无论文件的实际编码如何,“@@@@@”行都会报告 UTF-8。我通过使用 unixfile …

encoding text haskell utf-16 utf

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

这些调用是阻塞的还是异步的?

methodX()这两个片段中的执行是否不同?

SemaphoreSlim _locker.Wait()、 和WaitAsync()是具有同步和异步版本的同一方法的示例:

A:

SemaphoreSlim _locker = new SemaphoreSlim(1);
async Task methodX()
{
   _locker.Wait();
   // .. rest of the code
}
Run Code Online (Sandbox Code Playgroud)

乙:

SemaphoreSlim _locker = new SemaphoreSlim(1);
async Task methodX()
{
   await _locker.WaitAsync();
   // .. rest of the code
}
Run Code Online (Sandbox Code Playgroud)

c# asynchronous async-await

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

使用 Python 执行傅立叶分析以进行图像重建

我正在尝试对使用 Python 生成的一些形状进行傅立叶分析。我设法在图像上获得二维傅立叶变换并应用高斯滤波器,但是使用高斯滤波器的图像的逆图像正在移动,我不知道如何解决它。我试图采用真实的值只是希望它能解决这个问题,但没有任何改变。我在下面演示我的代码,有人对我能做什么有任何想法吗?

#importing necessary libraries 
from PIL import Image, ImageDraw
import matplotlib.pyplot as plt
import numpy as np
from scipy.ndimage import gaussian_filter


#function to apply Gaussian filter to the Fourier transform
def apply_gaussian_filter(fourier_transform, sigma):
    return gaussian_filter(fourier_transform, sigma)

##code to produce an image of a box and perform Fourier analysis on it

#defining the size bounds of the box
w, h = 65, 65
box = [(50, 29), (w-50, h-30)]

#creating the image with a white background
im = Image.new("I", …
Run Code Online (Sandbox Code Playgroud)

python analysis fft image-processing

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

如何在xsl翻译中有多个“替换”特殊字符

如何用斜杠替换字符串上的所有破折号和点?我尝试使用下面的代码。

<xsl:value-of select="translate('string_name', '-.', '/')"/>
Run Code Online (Sandbox Code Playgroud)

我也尝试过使用“|” 但这两个代码都不起作用

<xsl:value-of select="translate('string_name', '-|.|', '/')"/>
Run Code Online (Sandbox Code Playgroud)

有谁知道如何做到这一点?谢谢。

我希望删除字符串上的所有点和破折号,并用斜线替换。

xml xslt xslt-2.0 xslt-1.0

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

为什么使用变量可以使偏函数变得不那么偏?

我不明白为什么使用变量作为临时值会使部分函数不同:

val f1: PartialFunction[Option[Int], Int] = { b =>
  val i = identity(b)
  i match {
    case Some(res) => res
  }
}
val f2: PartialFunction[Option[Int], Int] = { b =>
  identity(b) match {
    case Some(res) => res
  }
}

f1.isDefinedAt(None)
f2.isDefinedAt(None)
Run Code Online (Sandbox Code Playgroud)

Scala 2.13.12 和 Scala 3.3.1 的结果是true/ 。false第一个版本显示匹配详尽性警告,第二个版本则没有。该代码无法使用 Scala 2.12.18 编译,错误出现在第一个版本中:

类型不匹配;

找到:选项[Int] => Int

必需:PartialFunction[Option[Int],Int]

第二个版本怎么比第一个版本更“偏颇”呢?

scala partialfunction partial-functions

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

Java/Kotlin 如何迭代字符串,以便组合字符与其基本字符保持一致?

我正在尝试迭代以下字符串:

\n

m\xc9\x94\xcc\x83tr

\n

但无论我做什么,它总是最终被处理为:

\n

米 \xc9\x94 \xcc\x83 tr

\n

波形符似乎与反转的 c 分离。

\n

我的第一个尝试是执行以下操作:

\n
"m\xc9\x94\xcc\x83tr".map {\n    print(it)\n}\n
Run Code Online (Sandbox Code Playgroud)\n

但波形符不会与反转的 c 保持一致。

\n

我看到了以下迭代器的建议:

\n
fun codePoints(string: String): Iterable<String> {\n    return object : Iterable<String> {\n        override fun iterator(): MutableIterator<String> {\n            return object : MutableIterator<String> {\n                var nextIndex = 0\n                override fun hasNext(): Boolean {\n                    return nextIndex < string.length\n                }\n\n                override fun next(): String {\n                    val result = string.codePointAt(nextIndex)\n                    nextIndex += Character.charCount(result)\n                    return String(Character.toChars(result))\n                }\n\n                override fun remove() {\n …
Run Code Online (Sandbox Code Playgroud)

java utf-16 kotlin

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

[ ] 和 Expression API 之间的区别?

当尝试从 Polars Dataframe 访问数据时,使用方括号[ ]和使用、等表达式 API有什么区别?什么时候使用哪一个?selectfilter

极坐标数据框

df = pl.DataFrame(
    {
        "a": ["a", "b", "a", "b", "b", "c"],
        "b": [2, 1, 1, 3, 2, 1],
    }
)
Run Code Online (Sandbox Code Playgroud)

python python-polars

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

Cypress 对 Vue 3 进行测试以检查 i18n 语言转换器

在我的 Vue 3 应用程序中,用户可以为自己制作多语言页面。他们可以决定其页面上可用的语言。可用的语言是从 API 加载的。

语言加载到 Pinia 存储中,LanguageSwitcher.vue 组件根据浏览器设置、URL 中的语言变量、默认区域设置和可用语言加载默认语言。所有这些都需要严格的赛普拉斯测试,其中之一是确保页面上显示的所选语言实际上是所选的语言。但是我如何从 Cypress 的 i18n 中获取当前选择的语言呢?

我的LanguageSwitcher.vue组件(没有设置初始语言的逻辑)

</script>
<template>
  <div data-testid="localeSwitcher">
    <span v-if="getAvailableLocales().length > 1">
      <span v-for="(locale, i) in getAvailableLocales()" :key="`locale-${locale}`">
        <span v-if="i != 0" class="has-text-warning-dark"> | </span>
        <a  @click="setLocale(locale)" :class="[{ 'has-text-weight-bold' : ($i18n.locale === locale)}, 'has-text-warning-dark']">
          {{ locale.toUpperCase() }}
        </a>
      </span>
    </span>
  </div>
</template>
Run Code Online (Sandbox Code Playgroud)

我的测试加载 i18n 并应该检查当前语言(但不知道如何做到这一点)

__test__/LanguageSwitcher.cy.js

import LanguageSwitcher from '../items/LanguageSwitcher.vue'
import { createI18n } from 'vue-i18n'
import { mount } from '@cypress/vue'
import en from '../../locales/en.json' …
Run Code Online (Sandbox Code Playgroud)

vue-i18n cypress vuejs3 cypress-component-testing

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