问题标签 [casting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

Filter by
Sorted by
Tagged with
0 投票
1 回答
9657 浏览

某些 Java 泛型类型转换中的类型安全警告是什么意思?

Java 警告的含义是什么?

类型安全:从 Object 到 List<Integer> 的转换实际上是在检查擦除的类型 List

当我尝试将 Object 强制转换为具有通用信息的类型时,我收到此警告,例如在以下代码中:

0 投票
8 回答
806112 浏览

常规演员与 static_cast 与 dynamic_cast

我已经编写 C 和 C++ 代码将近 20 年了,但是这些语言的某一方面我从未真正理解过。我显然使用过常规演员,即

到处都是,但似乎还有另外两种类型的演员表,我不知道有什么区别。以下代码行之间有什么区别?

0 投票
6 回答
26643 浏览

动态转换有哪些“好用”的例子?

我们经常听到/读到应该避免动态转换。根据您的说法,我想知道它的“有用”示例是什么?

编辑:

是的,我知道另一个线程:确实是在阅读那里的第一个答案时,我问了我的问题!

0 投票
32 回答
1728555 浏览

如何将 int 转换为枚举?

如何在 C# 中将anint强制转换为 an ?enum

0 投票
10 回答
16649 浏览

C++ 强制转换语法样式

Regular cast vs. static_cast vs. dynamic_cast相关的问题:

你更喜欢 C++ 中的哪种强制转换语法风格?

  • C 风格的强制转换语法:(int)foo
  • C++ 风格的强制转换语法:static_cast<int>(foo)
  • 构造函数语法:int(foo)

它们可能不会翻译成完全相同的指令(是吗?),但它们的效果应该是相同的(对吧?)。

如果您只是在内置数字类型之间进行转换,我发现 C++ 风格的转换语法过于冗长。作为一名前 Java 编码员,我倾向于使用 C 风格的强制转换语法,但我当地的 C++ 大师坚持使用构造函数语法。

你怎么看?

0 投票
7 回答
172888 浏览

我应该如何在 VB.NET 中进行转换?

所有这些都是平等的吗?在什么情况下我应该选择每个而不是其他?

  • var.ToString()

  • CStr(var)

  • CType(变量,字符串)

  • DirectCast(变量,字符串)


编辑:来自NotMyself的建议……

  • TryCast(变量,字符串)
0 投票
10 回答
12968 浏览

C# 数值常量

我有以下 C# 代码:

这会产生错误:

无法将类型“int”隐式转换为“byte”。存在显式转换(您是否缺少演员表?)

[更新:问题的第一个版本是错误的......我误读了编译器输出]

添加演员表不能解决问题:

我需要把它写成:

这看起来很奇怪。为什么|=运营商与运营商有任何不同|

有没有其他方法可以告诉编译器将常量视为一个字节?


//@Giovanni Galbo:是的,不是的。该代码处理外部设备中闪存的编程,并在逻辑上表示单个字节的内存。我可以稍后再施放它,但这似乎更明显。我猜我的 C 血统暴露得太多了!

@ Jonathon Holland:'as' 语法看起来更整洁,但不幸的是似乎不起作用......它产生:

as 运算符必须与引用类型或可为空的类型一起使用('byte' 是不可为空的值类型)

0 投票
8 回答
88284 浏览

演员表列出在 .NET 2.0 中

你能以某种方式投一个List<int>到吗?List<string>

我知道我可以遍历和 .ToString() 的东西,但演员会很棒。

我在 C# 2.0 中(所以没有LINQ)。

0 投票
6 回答
28910 浏览

如何将 10 乘以 Java 中的“整数”对象?

如何将 10 乘以一个Integer对象并取回该Integer对象?

我正在寻找最简洁的方法。

我可能会这样做:从Integer对象中获取 int,将它与另一个 int 相乘,然后用这个 int 值创建另一个 Integer 对象。

代码将类似于...

但是,我看到了作者这样做的代码:StringInteger对象中获取,最后连接“0”,然后Integer通过使用获取对象Integer.parseInt

代码是这样的:

这样做有什么好处吗?

一般来说,在这种情况下,最有效/最简洁的方式是什么?

0 投票
6 回答
17003 浏览

C# Casting 与 Parse

以下哪个是 C# 中更好的代码,为什么?

或者

最终,是强制转换还是解析更好?