针对parseInt和和Number这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展Djangopost()定义中的.get()和get_object_or_404()有什么区别?、Enum
针对parseInt和和Number这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展Django post()定义中的.get()和get_object_or_404()有什么区别?、Enum.name()和Enum.toString()有什么区别?、Hibernate中的persist()和save()有什么区别?、Java compare()和compareTo()有什么区别?等相关知识,希望可以帮助到你。
本文目录一览:- parseInt()和Number()有什么区别?(parseint和number的区别)
- Django post()定义中的.get()和get_object_or_404()有什么区别?
- Enum.name()和Enum.toString()有什么区别?
- Hibernate中的persist()和save()有什么区别?
- Java compare()和compareTo()有什么区别?
parseInt()和Number()有什么区别?(parseint和number的区别)
将字符串转换为数字时parseInt()
,Number()
行为如何不同?
答案1
小编典典嗯,它们在语义上是不同的,Number
称为函数的构造函数执行类型转换并parseInt
执行 解析 ,例如:
// parsing:parseInt("20px"); // 20parseInt("10100", 2); // 20parseInt("2e1"); // 2// type conversionNumber("20px"); // NaNNumber("2e1"); // 20, exponential notation
请记住,如果parseInt
在字符串上检测到前导零,它将以八进制为基础来解析数字,这在标准的新版本ECMAScript
5中已更改,但是要花很长时间才能进入浏览器实现((与ECMAScript3不兼容),也parseInt
将忽略与当前使用的基数的任何数字都不对应的结尾字符。
该Number
构造函数不检测八进制:
Number("010"); // 10parseInt("010"); // 8, implicit octalparseInt("010", 10); // 10, decimal radix used
但是它可以用十六进制表示法处理数字,就像parseInt
:
Number("0xF"); // 15parseInt("0xF"); //15
另外,用于执行数值类型转换的一种广泛使用的构造是一元+
运算符(p。72),它等效于将Number
构造函数用作函数:
+"2e1"; // 20+"0xF"; // 15+"010"; // 10
Django post()定义中的.get()和get_object_or_404()有什么区别?
如何解决Django post()定义中的.get()和get_object_or_404()有什么区别??
我在基于类的视图中具有以下代码:
def post(self,request,pk,slug,**kwargs):
self.page = Post.objects.get(pk=pk)
通过给定的pk,模板可以从Post模型中访问对象的属性。
但是,当我这样做时:
def post(self,**kwargs):
self.page = get_object_or_404(Post,pk=pk)
模板无法识别页面变量。感谢您的解释。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
Enum.name()和Enum.toString()有什么区别?
在阅读了文档之后,Stringjava.lang.Enum.name()
我不确定是否知道何时使用name()和何时使用toString()。
返回此枚举常量的名称,该名称与在其枚举声明中声明的完全相同。大多数程序员应该优先使用toString方法,因为toString方法可能返回更用户友好的名称。此方法主要设计用于在特殊情况下正确性取决于获得确切名称的特殊情况,具体名称在各个发行版本之间不会有所不同。
特别是,即使文档说偏爱使用toString()
Java,但如果我认为文档另有建议,则使用Java自己的StandardLocation枚举name
。
public String getName() { return name(); }
进一步Enum
实现toString()
为
public String toString() {
return name;
}
我想不出的情况下,用户定义枚举将覆盖toString()
这么name()
和toString()
几乎都是一模一样的。
- 您能解释一下为什么忽略文档并始终使用
name()
是一个坏主意吗? - 短语“不会因发行版本而异”怎么办?如果名称不会改变,是否暗示
java.lang.Enum.toString()
会这样?
Hibernate中的persist()和save()有什么区别?
通过文档,我只能找到一个不同之处,即save方法生成将对象作为生成的标识符返回,但persist不是。这是提供persist方法的唯一目的。如果是的话,即使他不打算这样做对程序员也有帮助要使用生成的标识符,他可以使用save并忽略返回值。
也来通过这个线程有什么优势依然存在(中)与保存()在Hibernate中?。我可以从此线程获取的有意义的语句是
persist(),还可以保证,如果在事务边界之外调用该语句,则该保存方法不会执行INSERT语句, 但是不确定如何在程序中尝试该 语句,
以便可以得到实际的区别?
Java compare()和compareTo()有什么区别?
Java compare()
和compareTo()
方法之间有什么区别?这些方法是否给出相同的答案?
答案1
小编典典从JavaNotes:
- a.compareTo(b):
可比较接口:比较值并返回一个整数,该整数告诉值比较的是小于,等于还是大于。
如果你的类对象具有自然顺序,请实现Comparable<T>
接口并定义此方法。所有具有自然排序实现的Java类Comparable<T>
-示例:String
,包装类,BigInteger
- compare(a, b):
比较器接口: 比较两个对象的值。这被实现为的一部分Comparator<T>
界面,并且典型的使用是定义一个或一个以上小工具类实现此,传递给方法,例如sort()
或通过排序数据结构,例如使用TreeMap
和TreeSet
。你可能想要为以下对象创建一个Comparator
对象:
- 多重比较。提供几种不同的方式对事物进行排序。例如,你可能想按名称,ID,年龄,身高,…对Person类进行排序。你将为每个传递给
sort()
方法的对象定义一个Comparator
。 - 系统类为你无法控制的类提供比较方法。例如,你可以为字符串定义一个比较器,以按长度比较它们。
- 策略模式要实现策略模式,在这种情况下,你希望将算法表示为对象,可以将其作为参数传递,并保存在数据结构中,等等。
如果你的类对象具有自然排序顺序,则可能不需要compare()
。
来自http://www.digizol.com/2008/07/java-sorting-comparator-vs-comparable.html的摘要
可比
对象可比对象能够将自己与另一个对象进行比较。
比较
器比较器对象能够比较两个不同的对象。该类不是在比较其实例,而是在比较其他一些类的实例。
用例上下文:
可比的界面
equals方法和==and != 运算符测试是否相等/ 不相等,但没有提供测试相对值的方法。
一些类(例如String和其他具有自然顺序的类)实现Comparable
实现。Comparable<T>Collections.sort()Arrays.sort()
定义比较器对象
你可以创建Comparators来对任何类进行任意排序。
例如,String该类定义了CASE_INSENSITIVE_ORDER比较器。
两种方法之间的差异可以与以下概念联系起来:
有序集合:
订购Collection
时,这意味着你可以按特定(非随机)顺序(Hashtable不订购a)在集合中进行迭代。
具有自然顺序的 Collection
不仅是有序的,而且是排序的。定义自然顺序可能很困难!(如自然的String顺序)。
HaveAGuess在评论中指出的另一个区别是:
Comparable
在实现中并且在界面中不可见,因此当你进行排序时,你实际上并不知道会发生什么。Comparator
让你放心,订购将得到明确定义。
关于parseInt和和Number的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于Django post()定义中的.get()和get_object_or_404()有什么区别?、Enum.name()和Enum.toString()有什么区别?、Hibernate中的persist()和save()有什么区别?、Java compare()和compareTo()有什么区别?等相关知识的信息别忘了在本站进行查找喔。
本文标签: