精华内容
下载资源
问答
  • 本文实例讲述了jQuery使用$.extend(true,object1, object2);实现深拷贝对象的方法。分享给大家供大家参考,具体如下: 语法:jQuery.extend( [deep ], target, object1 [, objectN ] ) 深浅拷贝对应的参数就是[deep]...
  • setAccessible(true)用法及意义

    万次阅读 多人点赞 2020-02-04 21:26:17
    实际开发中,...作用于方法上,method.setAccessible(true); public static void test02() throws Exception{ User u = new User(); Class clazz = u.getClass(); Method m = clazz.getDeclaredMe...

    实际开发中,setAccessible具体的用处主要有两处:

    作用于方法上,method.setAccessible(true);

    public static void test02() throws Exception{
    		User u = new User();
    		Class clazz = u.getClass();
    		Method m = clazz.getDeclaredMethod("getUname", null);
    		m.setAccessible(true);
    		m.invoke(u, null);	
    	}

    作用于属性上,field.setAccessible(true);

    if (field.isAnnotationPresent(TestIdSign.class)){
                try {
                    field.setAccessible(true);
                    field.set(object,testId);
                } catch (IllegalAccessException e) {
                    throw new RuntimeException("set testID illegalAccessException",e);
                }
            }

    将此对象的 accessible 标志设置为指示的布尔值。值为 true 则指示反射的对象在使用时应该取消 Java 语言访问检查。值为 false 则指示反射的对象应该实施 Java 语言访问检查;实际上setAccessible是启用和禁用访问安全检查的开关,并不是为true就能访问为false就不能访问 ;

    由于JDK的安全检查耗时较多.所以通过setAccessible(true)的方式关闭安全检查就可以达到提升反射速度的目的 

    如下例子:参考(http://huoyanyanyi10.iteye.com/blog/1317614

    package com.chenshuyi.test;
    
    import java.lang.reflect.InvocationTargetException;
    import java.lang.reflect.Method;
    
    public class Main {
        public static void main(String[] args) throws SecurityException, NoSuchMethodException, IllegalArgumentException,
                IllegalAccessException, InvocationTargetException {
            Method m = A.class.getDeclaredMethod("getName", new Class[] {});
            System.out.println(m.isAccessible());
            // getName是public的,猜猜输出是true还是false
    
            A a = new A();
            a.setName("Mr Lee");
            long start = System.currentTimeMillis();
            for (int i = 0; i < 10000000; i++) {
                m.invoke(a, new Object[] {});
            }
            System.out.println("Simple              :" + (System.currentTimeMillis() - start));
    
            m.setAccessible(true); // 注意此处不同
            long start1 = System.currentTimeMillis();
            for (int i = 0; i < 10000000; i++) {
                m.invoke(a, new Object[] {});
            }
            System.out.println("setAccessible(true) :" + (System.currentTimeMillis() - start1));
        }
    }
    
    class A {
        private String name;
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    }

    测试结果 
    false 
    Simple              :4969 
    setAccessible(true) :250 
    明显 Accessible并不是标识方法能否访问的. public的方法 Accessible仍为false

    使用了method.setAccessible(true)后 性能有了20倍的提升
    Accessable属性是继承自AccessibleObject 类. 功能是启用或禁用安全检查

     

    展开全文
  • 浅谈Python里面None True False之间的区别,近似值,分数,浮点数,区别,浮点浅谈Python里面None True False之间的区别易采站长站,站长之家为您整理了浅谈Python里面None True False之间的区别的相关内容。None虽然跟...

    浅谈Python里面None True False之间的区别,近似值,分数,浮点数,区别,浮点

    浅谈Python里面None True False之间的区别

    易采站长站,站长之家为您整理了浅谈Python里面None True False之间的区别的相关内容。

    None虽然跟True False一样都是布尔值。

    虽然None不表示任何数据,但却具有很重要的作用。

    它和False之间的区别还是很大的!

    例子:>>> t = None>>> if t:... print("something")... else:... print("nothing")...nothing

    区分None和False.使用is来操作!>>> if t is None:... print("this is None!")... else:... print("this is ELSE!")...this is None!>>>

    虽然是个小小的区别!但是在Python里面是重要的。你需要将None和不含任何值的空数据结构区分开。

    0值的整型/浮点型,空字符串(‘ '),空列表([]),空元组({}),空集合(set())都是等价于False,但是不等于None。

    现在,写一个函数:>>> def oj(t):... if t is None:... print("this is None")... elif t:... print("this is True")... else:... print("this is False")...

    进行数据测验:>>> oj(None)this is None>>> oj(True)this is True>>> oj(False)this is False>>> oj(0)this is False>>> oj(0.0)this is False>>> oj([])this is False>>> oj(())this is False>>> oj({})this is False

    以上说明,None,False,True还是有很大不同的~

    补充知识:python "0.3 == 3 * 0.1" 为False的原因

    一.引入

    如果你在你的解释器中输入以下第一行代码:>>> 0.3 == 3 * 0.1

    False

    你会发现,输出为False。

    对于CS小白而言,对此表示费解。

    因此我查了相关的资料,进行了一下总结。

    二.浮点算法的问题和局限

    1.计算机硬件对于浮点数的处理方式

    首先,我们必须明白一件事情。浮点数在计算机硬件中表示为基数2(二进制)的分数。

    例如:0.125(10) == 1/10 + 2/100 + 5/1000

    0.001(2) == 0/2 + 0/4 + 0/8

    这两个分数具有相同的值,唯一的实际区别是,第一个分数以10为基数的分数表示,第二个分数以2为基数。当我们输入0.125时,计算机硬件会以第二种方式表示,而不是第一种。

    但是不幸的是,大多数十进制分数不能完全表示为二进制分数。

    结果是,通常我们输入的十进制浮点数仅由计算机中实际存储的二进制浮点数

    近似。但是在十进制不能完全表示为二进制分数的情况下,无论多么近似,终究不是确切值。

    2.例子:对于0.1的处理

    例如0.1(10),无论我们愿意使用多少个2位数字,十进制值0.1都不能精确表示为2进制小数,即以2为底的1/10是无限重复的分数。0.1(10) == 0.0001100110011001100110011001100110011001100110011...(2)

    当我们让它停在某个有限的位数,就可以得出一个近似值。

    因为Python浮点数可使用 53位精度 ,

    因此输入十进制数时计算机内部存储的值0.1是0.00011001100110011001100110011001100110011001100110011010(2)

    这个值接近但是不等于1/10.

    这也是造成print(0.3 == 3 * 0.1)输出为False的原因。

    如果要强制使用python输出计算机内保存的0.1的真实十进制值,应该为>>> 0.1

    0.1000000000000000055511151231257827021181583404541015625

    由于这一串数字实在太长了,所以Python通过显示舍入的值来保持数字的可管理性。所以实际上我们看到是:>>> 0.1

    0.1

    但是我们要明白,机器中的值不完全是1/10,这只是舍入了真实机器值的显示。

    3.一点有趣的东西

    上面我们提到了Python通过显示舍入的值来保持数字的可管理性,我们看到的只是舍入了真实机器值的显示。通过下面的例子,我们就可以更加清楚这一事实。

    当我们用python写下下面的代码时,就会发现这个神奇的现象。

    这本质上是二进制浮点数:这不是Python中的bug,也不是代码中的bug。在支持硬件浮点算术的所有语言中,都会看到同一种东西(尽管某些语言在默认情况下或在所有输出模式下可能不会显示差异)。

    1)0.1+0.2>>> 0.1 + 0.2

    0.30000000000000004

    2)round(2.675, 2)

    i)round( x [, n] )的用法

    作用: 返回浮点数x的四舍五入值。

    参数:

    x – 数值/数值表达式。

    n – 要保留的小数位数,可以省略。若省略,n默认为0,即四舍五入到整数。

    ii)round( 2.675, 2)

    按照我们的逻辑来看,输入round( 2.675, 2 ),输出应该为2.68。但是实际上是:>>> round(2.675, 2)

    2.67

    三.表示错误(选读)

    在这里我们详细说明“ 0.1”示例,并说明我们如何自己对此类情况进行准确的分析。如果你不想深究其背后的原因,下面的可以忽略。

    1.表示错误的概念、影响和原因

    (1)概念

    表示错误是指某些(在实际中为大多数)小数部分不能完全表示为二进制(基数为2)分数。

    (2)影响

    使得Python(或Perl,C,C ++,Java,Fortran和其他许多语言)经常不显示我们所期望的确切十进制数字。

    (3)原因

    如今,几乎所有机器都使用IEEE-754浮点算法,并且几乎所有平台都将Python浮点数映射到IEEE-754“双精度”。754个double包含53位精度,因此在输入时,计算机会努力将浮点数转换为J / 2 ** N形式的最接近分数, 其中J是一个正好包含53位的整数。

    2."0.1"的具体分析

    转化目标:1 / 10 ~= J / (2 ** N)

    所以:J ~= 2 ** N / 10

    1)求解N

    因为J是一个正好包含53位的整数(但是实际上最后我们用的是J的近似值( >=2 ** 52 and < 2 ** 53)是通过N计算出来的),并且N是一个整数,所以我们可以得到N的最佳值是56>>> 2**524503599627370496>>> 2**539007199254740992>>> 2**56/107205759403792793

    2)求解我们要用的J的近似值

    我们通过N来求解实际的J,我们实际上用的J其实是(2**N /10)四舍五入之后的值。

    i)divmod(a, b)

    功能: 接收两个数字类型(非复数)参数,返回一个包含商和余数的元组(a // b, a % b)。

    参数:

    a – 被除数

    b – 除数

    ii)求解J近似值>>> q, r = divmod(2**56, 10)>>> r6

    因为余数为6>5,所以我们用的J的近似值是>>> q+1

    7205759403792794

    3)求解"0.1"的近似值

    因此,在754倍精度中,最接近1/10的最佳近似值是7205759403792794 / 72057594037927936

    【注】由于我们四舍五入,因此实际上比1/10大一点;如果我们不进行四舍五入,则商将小于1/10。但是在任何情况下都不能完全是 1/10!

    4)获取计算机存储值

    通过上面的分析,我们可以看到计算机永远不会“看到” 1/10:它看到的是上面给出的精确分数,它可以得到的最佳754倍近似值(即J的近似值)>>> .1 * 2**56

    7205759403792794.0

    如果我们将该分数乘以10 ** 30,我们可以看到其30个最高有效十进制数字的(截断)值:>>> 7205759403792794 * 10**30 // 2**56

    100000000000000005551115123125L

    在Python 2.7和Python 3.1之前的版本中,Python将该值四舍五入为17个有效数字,即为'0.10000000000000001'。

    在最新版本中,Python会基于最短的十进制分数显示一个值,该值会正确舍入为真实的二进制值,并仅得出'0.1'。以上就是关于对浅谈Python里面None True False之间的区别的详细介绍。欢迎大家对浅谈Python里面None True False之间的区别内容提出宝贵意见

    展开全文
  • Android android:exported = true 用法详解Android相关属性的介绍:android:exported = true在Activity中该属性用来标示:当前Activity是否可以被另一个Application的组件启动:true允许被启动;false不允许被启动。...

    Android android:exported = true 用法详解

    Android相关属性的介绍:android:exported = true

    在Activity中该属性用来标示:当前Activity是否可以被另一个Application的组件启动:true允许被启动;false不允许被启动。

    android:exported 是Android中的四大组件 Activity,Service,Provider,Receiver 四大组件中都会有的一个属性。

    总体来说它的主要作用是:是否支持其它应用调用当前组件。

    例如:

    android:exported="true"

    …/>

    注意:

    AndroidManifest中android:exported="false"

    如果Service等的AndroidManifest中声明为android:exported="false"

    则该服务不能够跨进程使用。

    Permission Denied!

    需要改为:android:exported="true"

    以上就是本次介绍的全部知识点内容,感谢大家的阅读和对我们的支持。

    时间: 2019-09-05

    Android Button的基本用法详解 Button的Click点击事件处理: mButtonBack.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { Log.e("================", "MenuBackBtnListen"); MenuimageView.setVisibility(View.INVISIBLE); mB

    本文实例讲述了Android中persistent属性用法.分享给大家供大家参考,具体如下: 前段时间在研究telephony时,一直没有在framework下发现对telephony的初始化(PhoneFactory.Java中的makeDefaultPhones函数)的调用.结果全局搜索之后发现在application PhoneApp(packages/apps/Phone)中调用了.但是application PhoneApp既没有被Broadcast唤醒,也没有被其他service调用

    本文实例讲述了Android开发之自定义控件用法.分享给大家供大家参考,具体如下: 今天和大家分享下组合控件的使用.很多时候android自定义控件并不能满足需求,如何做呢?很多方法,可以自己绘制一个,可以通过继承基础控件来重写某些环节,当然也可以将控件组合成一个新控件,这也是最方便的一个方法.今天就来介绍下如何使用组合控件,将通过两个实例来介绍. 第一个实现一个带图片和文字的按钮,如图所示: 整个过程可以分四步走.第一步,定义一个layout,实现按钮内部的布局.代码如下: custom_bu

    ShapeDrawable是一种很常见的Drawable,可以理解为通过颜色来构造的图形,它既可以是纯色的图形,也可以是具有渐变效果的图形,ShapeDrawabled语法稍显复杂,如下所示:

    本文实例讲述了Android ActionBar搜索功能用法.分享给大家供大家参考,具体如下: 使用ActionBar SearchView时的注意点: 首先要吐槽一下Android的官方Guide文档 ,关于用法讲得不明确,可能是一直没更新的原因吧. 本来照着文档搞了一下,hint死活出不来,也无法跳转到搜索结果Activity. StackOverflow也有人提出了这个问题,答案说得很明白 - 参考链接. 正确用法 1. 在AndroidManifest.xml中为提供SearchView

    本文实例讲述了Android开发中LayoutInflater用法.分享给大家供大家参考,具体如下: 在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById().不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化:而findViewById()是找xml布局文件下的具体widget控件(如Button.TextView等). 具体作用: 1.对于一个没有被载入或者想要动态载入的界面,都需要使用Layout

    本文实例讲述了Android编程之光线传感器用法.分享给大家供大家参考,具体如下: Android手机自带光线传感器,通常我们手机的屏幕自动亮度都是用光线传感器来实现的.该传感器在前置摄像头附近,此外,还有一个距离传感器.这里主要讲解如何使用Android手机的光线传感器. 获得感应器服务 Android开发中要使用光线传感器,需要先获得系统传感器服务Context.SENSOR_SERVICE,获得方法如下: SensorManager senserManager = (SensorManag

    Notification的作用 通知(Notification)是Android系统中比较有特色的一个功能.当某个应用程序希望向用户发出一些提示信息,而该应用程序又不在前台运行时,就可以用通知来实现 用法 首先我们需要一个NotificationManager来对通知进行管理,可以调用getSystemService()方法得到,方法接收一个字符串参数用于确定获取系统的哪个服务,这里我们传入NOTIFICATION_SERVICE. NotificationManager manager=(No

    MainActivity.java package com.example.mars_2400_seekbar; import android.support.v7.app.ActionBarActivity; import android.support.v7.app.ActionBar; import android.support.v4.app.Fragment; import android.app.Activity; import android.os.Bundle; import a

    展开全文
  • 本文实例讲述了Python中的True,False条件判断用法。分享给大家供大家参考。具体分析如下:对于有编程经验的程序员们都知道条件语句的写法:以C++为例:代码如下:if (condition){doSomething();}对于Python中的条件...

    本文实例讲述了Python中的True,False条件判断用法。分享给大家供大家参考。具体分析如下:

    对于有编程经验的程序员们都知道条件语句的写法:

    以C++为例:

    代码如下:

    if (condition)

    {

    doSomething();

    }

    对于Python中的条件判断语句的写法则是下面的样子:

    代码如下:

    if (condition):

    doSomething()

    那么对于条件语句中的condition什么时候为真什么时候为假呢?

    在C++/Java等高级语言中,如果条件的值为0或者引用的对象为空指针,那么该条件即为False。

    在Python中如果condition为 '',(),[],{},None,set()那么该条件为Flase,否则为True。

    下面为Python的测试语句:

    1.针对字符串的测试

    代码如下:

    >>> condition=''

    >>> print 'True' if condition else 'False'

    False

    >>> condition='test'

    >>> print 'True' if condition else 'False'

    True

    2.针对原组的测试

    代码如下:

    >>> condition=()

    >>> print 'True' if condition else 'False'

    False

    >>> condition=(1,2)

    >>> print 'True' if condition else 'False'

    True

    3.针对列表的测试

    代码如下:

    >>> condition=[]

    >>> print 'True' if condition else 'False'

    False

    >>> condition=['a','b']

    >>> print 'True' if condition else 'False'

    True

    4.针对字典的测试

    代码如下:

    >>> condition={}

    >>> print 'True' if condition else 'False'

    False

    >>> condition={'k':'v'}

    >>> print 'True' if condition else 'False'

    True

    5.针对None的测试

    代码如下:

    >>> condition=None

    >>> print 'True' if condition else 'False'

    False

    6.针对set()的测试

    代码如下:

    >>> condition=set()

    >>> print 'True' if condition else 'False'

    False

    >>> condition.add('a')

    >>> print 'True' if condition else 'False'

    True

    希望本文所述对大家的Python程序设计有所帮助。

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!

    展开全文
  • cityscapes数据集具体使用方法

    千次阅读 2021-02-05 09:23:15
    又搜到了下面的方法,也可以实现生成上面标注图的功能。 第一步首先要找到数据集label颜色对应类别的列表:(这个一般在官网或者是github上会有,cityscapes我就是从github上找的) Label = namedtuple('Label', [ '...
  • function函数 function函数的具体用法

    千次阅读 2021-04-26 19:51:28
    我们在用Excel的过程当中经常会看到各种各样的函数...function函数——function()函数的具体用法function()函数的具体用法函数实际上是一个统一的代码块,你可以随时调用它。创建PHP函数的方法:所有函数的开头必须...
  • 目前使用的2020版本(未加密), 安装简单,界面美观,使用傻瓜。 下载地址: 链接:https://pan.baidu.com/s/1djamvtYmhtl9BjmKsAwtbg 提取码:cd7a 以下是旧版本的操作使用步骤,可做参考(新版本使用...
  • trueStudio开发环境配置笔记

    千次阅读 2019-04-01 15:14:28
    TrueStudio上手指南
  • vivado xilinx IOB = true使用

    千次阅读 2019-03-24 17:46:29
    约束方法有两种,选中cd port,注意不是OBUF,在I/O Port的属性中添加IOB属性,设置为TRUE(允许)或FALSE(不允许),可以看到默认的都为Auto。在xdc文件中会生成约束命令。 set_property IOB TRUE [get_ports c...
  • 您忘记了FILE_NOT_FOUND因为它是强类型的在Java中,只能使用" true"和" false"来确定布尔条件。 您不能像在C和C ++中那样将其他原始类型用作默认的" true"或" false"。因为它是用这种方式定义的。 纳夫说。因为它是f...
  • FALSE/TRUE与false/true的区别

    万次阅读 2017-04-23 12:33:17
    FALSE/TRUE与false/true的区别 1.FALSE/TRUE与false/true的区别: false/true是标准C++语言里新增的关键字,而FALSE/TRUE是通过#define定义的INT数据,主要用途 是解决程序在C与C++中环境的差异,以下是FALSE/...
  • SpringAOP源码分析之expose-proxy="true

    千次阅读 2019-09-06 11:30:39
    具体生效机制是通过@EnableTransactionManagement注解中的TransactionManagementConfigurationSelector类声明,其中声明导入了AutoProxyRegistrar类,该类获取注解中proxy相关注解配置,并根据配置情况,在Bean...
  • @Accessors(chain = true)注解的作用

    千次阅读 2021-07-26 20:12:09
    @Accessors【chain = true】注解的作用1.@Accessors(chain = true)注解 1.@Accessors(chain = true)注解 在我们平时写代码的...这个注解是来自与Lombok里的,具体的作用是开启链式编程,让我们写代码更加方便。 ...
  • STL中队列(queue)的具体使用方法

    千次阅读 2019-04-04 17:46:30
    queue的优势 1、动态分配空间。 queue的劣势 1、操作缓慢。比起手写队列来说。 基本操作: push(x) 将x压入队列的末端 ... 弹出队列的第一个元素(队顶元素),注意此函数并... 当队列为空时,返回true size() 返回...
  • Vuex getters方法具体使用

    千次阅读 2020-05-10 23:04:11
    使用vuex 写一个增删改成项目 vuex 最大的特点就是其他页面调用他页面mutations或者addItem中的事件而不是自己查询 例如: 你只需要给他创建事件调用vuex中的事件就行,给vuex传出想要的值 给我印象最深的就是vuex...
  • java switch基础介绍及具体使用方法

    万次阅读 多人点赞 2018-08-30 17:29:50
    switch和if-else相比,由于使用了Binary Tree算法,绝大部分情况下switch会快一点,除非是if-else的第一个条件就为true。  编译器编译switch与编译if…else…不同。不管有多少case,都直接跳转,不需逐个比较...
  • 运用Acronis True Image恢复系统

    千次阅读 2017-11-12 17:35:00
    关于异构服务器平台的操作系统恢复研究与实现 ... 摘要:系统的备份与恢复在我们日常工作生活中的应用越来越广泛,对于一个企业级的日常运维工作,系统...True Image是一款很好的备份恢复工具,可以用于系统的备份与恢...
  • @Transactional以及Rollback(value = true)的使用 https://blog.csdn.net/u013929527/article/details/102596243 @Transactional的使用 1.Spring事务的原理 Spring 事务管理分为编码式和声明式的两种方式。编程式...
  • JS中true和false的判断

    万次阅读 2017-09-21 10:30:28
    学习和使用js的时候对于true和false的判断总是非常纠结,接下来做一个总结。JS中属于弱类型语言,这在一定程度上提供了方便,同时也为理解加大了阻碍,其中“==”和“===”就是其一,“==”只注重值的相等,“===”...
  • 用到最多的无非就是NavigateUrl,既然是超链接,总得有个链接地址,下面看具体用法: 代码如下: <%@ Page Language=”C#” AutoEventWireup=”true” CodeFile=”HyperLink.aspx.cs” Inherits=”...
  • { videoPlayer } } 使用 【1】html部分 1 2 3 4 5 6 7 8 9 <template> <div class='demo'>  ref="videoPlayer" :playsinline="true" :options="playerOptions"> video-player> div> template> 【2】js部分 1 2 3...
  • (* KEEP="TRUE" *)使用

    千次阅读 2019-10-07 11:49:18
    使用xilinx厂家的FPGA时,chipscope经常被用来分析和调试,在我们使用chipscope时,有的时候会发现想要添加的信号会无法找到,主要原因是ise在综合时将会对我们的v文件进行相应的优化,我们可以使用(* KEEP="TRUE...
  • 主要给大家介绍了关于mybatis中标签bool值类型为false判断方法,文中通过示例代码介绍的非常详细,对大家学习或者使用mybatis具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
  • Python 编程中 while 语句用于循环执行程序,即在...判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。当判断条件假false时,循环结束。执行流程图如下:实例:#!/usr/bin/pythoncount = 0while (cou...
  • vue 中 Promise 使用方法

    千次阅读 2020-10-20 21:23:56
    1. Promise 基本概念: Promise是一个构造函数,所以可以 new 出一个Promise的实例; 在Promise上有两个函数...Promise表示一个一步操作,每当我们new一个Promise的实例,这个实例就代表具体的 异步 操作。 Promise创建
  • 当proxyTargetClass属性为true时,使用CGLIB代理。默认使用标准JAVA注解。在spring Boot中此参数写在程序入口即可。 @Retryable 标注此注解的方法在发生异常时会进行重试 value:指定处理的异常类 include:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,147,694
精华内容 459,077
关键字:

true具体用法