小编Jas*_*rff的帖子

Java-当用户输入字符串时,它是字符串文字吗?

我有一个问题可以帮我做作业.我们使用字符串文字编写程序并反向打印.我写了它,它工作正常,但我有两个不同的版本.第一个使用扫描仪,因此用户可以输入字符串,然后反向打印.在第二个中,我声明一个字符串文字,然后反向打印.

我的问题不是关于我的程序运行正常,而是我找不到任何在线或我的书中说输入的字符串是字符串文字.我知道字符串文字通常写成

String a = "Welcome to Java"
Run Code Online (Sandbox Code Playgroud)

但可以写成

String a = new String("Welcome to Java") 
Run Code Online (Sandbox Code Playgroud)
  • 那么输入的字符串是不是与字符串文字相同?
  • 是否必须用引号写出才能被视为字符串文字?

我假设答案是肯定的,因为我的书基本上说它必须在引号中,但我想在我递交我的作业之前仔细检查我正在转向正确的版本.在此先感谢任何澄清!

java string-literals

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

在什么情况下Python复数指数抛出一个OverflowError?

我试图找出这里的模式:

>>> 1e300 ** 2
OverflowError: (34, 'Result too large')
>>> 1e300j ** 2
OverflowError: complex exponentiation
>>> (1e300 + 1j) ** 2
OverflowError: complex exponentiation
>>> (1e300 + 1e300j) ** 2
(nan+nanj)
Run Code Online (Sandbox Code Playgroud)

这种行为似乎不仅在理论上没有说明,而且在实践中也很奇怪!这解释了什么?

python floating-point complex-numbers

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

最小垂直3D平面算法中点与线的距离

如何在3D平面中找到一条直线的最小垂直距离?

请给我逻辑,我会尝试自己编码.

请告诉我如何根据坐标系统的x,y,z来做到这一点.

我发现从编码的角度来看,找到合适的解决方案有点困难.理解在线解决方案有点生疏.所以请帮助我.

请注意,行以3D空间方程给出.

algorithm math

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

如何从数组中获取表示最多的对象

我有一个包含一些对象的数组,并且有几个相似的对象.例如:水果= [苹果,橙子,苹果,香蕉,香蕉,橙子,苹果,苹果]

从这个数组中获取代表性最高的对象的最有效方法是什么?在这种情况下,它将是"苹果",但你会如何以有效的方式出去计算?

python arrays algorithm performance list

3
推荐指数
2
解决办法
549
查看次数

如何将数字从基数8转换为10?

我知道75(base8)= 61(base10),但我不能轻易找到这个公式.如何从基数8转换为基数10?

math radix

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

有没有办法改变Clojure中的参数?

在lisp中,我可以将参数传递给函数并在函数内进行更改.(AKA破坏性功能).但是,在Clojure中,我已经读过某个地方,在同一个函数中改变给定的参数是不允许的.例如:

(defn add-two-lists [list1 list2]
  (for [n (range (count list1))]
    (+ (nth list1 n) (nth list2 n))))
Run Code Online (Sandbox Code Playgroud)

这是一个普通函数,它的输出是两个相同列表的相加.但是,我想要这样的东西:

(defn add-two-lists [list1 list2 added_list]
  (set! added_list 
       (for [n (range (count list1))]  
          (+ (nth list1 n) (nth list2 n)))))
Run Code Online (Sandbox Code Playgroud)

也许我的使用set!是错误的或误用的,我仍然会得到错误.有没有一种优雅的方法来破坏性地修改Clojure中的参数?

clojure

3
推荐指数
2
解决办法
430
查看次数

Dafny/Boogie 中的触发器是什么?

我在达夫尼一瘸一拐地走着,却不明白触发因素。也许因此,我编写的程序似乎给验证者带来了困难。有时我会花大量时间摆弄我的证明,试图让 Dafny/Boogie 相信它是有效的。当我让某些东西起作用时,有时验证速度很慢(这严重降低了我继续下去的能力)。

很难提出一个精确的问题,因为我不知道它是什么。但让我们从基础开始:

什么是触发器?它们什么时候使用?它们是如何推断的?一旦我理解了这一切,接下来我应该读什么?

quantifiers dafny boogie

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

有效地在容器中查找多个项目

我需要从一个大容器中找到许多对象.

我能想到的唯一方法就是在循环中一次只搜索一个项目的容器,然而,即使是一个有效的搜索,平均情况下说"log n"(其中n是容器的大小),这给了我整个操作的"m log n"(其中m是我正在寻找的项目数).

这对我来说似乎非常不理想,而且作为我可能需要在频繁的基础上做的事情,我肯定希望在可能的情况下改进.

这两个部分都没有实现,所以我愿意接受关于主容器格式,我正在寻找的项目的"列表"等的建议,以及实际的搜索算法.

这些项是复杂的对象,但搜索键只是一个简单的整数.

c++ algorithm search

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

Java DecimalFormat.format不格式化数字?

我有下面的方法,但由于某种原因,它没有格式化区域只有一个小数.所有帮助表示赞赏.

public double beraknaArea()
    {
       DecimalFormat formatter = new DecimalFormat("#0.0");
       double area = 0;
       area = radie*radie*3.14;
       formatter.format(area);
       return area;
     }
Run Code Online (Sandbox Code Playgroud)

java

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

在Dafny中,能否证明整数/自然除法和实数除法之间的关系?

我想证明这一点:

\n\n
lemma NatDivision(a: nat, b: nat)\n  requires b != 0\n  ensures a / b == (a as real / b as real).Floor\n
Run Code Online (Sandbox Code Playgroud)\n\n

我不知道从哪里开始\xe2\x80\x94这似乎几乎是不言而喻的。

\n\n

如果我知道公理什么,我就可以从那里开始工作,但我翻遍了 Dafny 源代码,找不到除法的公理nat。(This Is Boogie 2声称 Boogie 要求您定义自己的,所以我想它们就在某个地方,也许在 C# 代码中。)

\n\n

(更广泛的背景:我正在尝试使用这种方法(a + n * b) % b == a % b证明自然数的这一点。这是几乎可行的达夫尼证明。)

\n

integer-division dafny

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