精华内容
下载资源
问答
  • 自动装箱在JDK1.5之后才有的新特性。 自动装箱和自动装箱 自动装箱基本数据类型向包装类型转换的过程,自动拆箱包装类型向基本数据类型转换的过程。 int i = 5; Interger j = i; //在这里,i为int数据类型...

    自动拆装箱是在JDK1.5之后才有的新特性。

    自动装箱和自动装箱

    自动装箱是基本数据类型向包装类型转换的过程,自动拆箱是包装类型向基本数据类型转换的过程。

    int i = 5;
    Interger j = i;  //在这里,i为int数据类型,而Integer是int的包装类
    int i2 = j;  //将数据类型为Integer类型的自动转换成了int类型
    

    八种基本数据类型都有他对应的包装类型

    基本数据类型 byte char short int long float double boolean
    包装类型 Byte Character Short Integer Long Float Double Boolean
    展开全文
  • Java&0xFF是什么意思?计算机的原码、补码和反码

    万次阅读 多人点赞 2017-07-07 17:08:31
    公司项目有向MCU发数据的代码,新来的同事对其中的& 0xFF很不理解,我解释了很多遍他还是蒙圈状态,可能我的表达能力太差,想想还是用一篇博客来详细说明吧,代码如下: 更新:07月10日,有个小伙伴对这种操作...

    公司项目中有向MCU发数据的代码,新来的同事对其中的& 0xFF很不理解,我解释了很多遍他还是蒙圈状态,可能我的表达能力太差,想想还是用一篇博客来详细说明吧,代码如下:
    更新:07月10日,有个小伙伴对这种操作各种不习惯,怎么解释他都想不明白,所以增加了代码注释
    这里写图片描述
    这里写图片描述

    为什么要加上“& 0xFF”?

    拆分理解下
    0xFF是16进制的表达方式,F是15;十进制为:255,二进制为:1111 1111
    &运算符:如果2个bit都是1,则得1,否则得0

    然后开始百度……

    最后一路百度到计算机的原理之:原码、补码和反码,先简单讲下这三个词的意思吧!

    我们已经知道计算机中,所有数据最终都是使用二进制数表达。
    我们也已经学会如何将一个10进制数如何转换为二进制数。
    不过,我们仍然没有学习一个负数如何用二进制表达。

    比如,假设有一 int 类型的数,值为5,那么,我们知道它在计算机中表示为:
    00000000 00000000 00000000 00000101
    5转换成二制是101,不过int类型的数占用4字节(32位),所以前面填了一堆0。

    现在想知道,-5在计算机中如何表示?

    在计算机中,负数以其正值的补码形式表达。

    什么叫补码呢?这得从原码,反码说起。

    原码:一个整数,按照绝对值大小转换成的二进制数,称为原码。

    比如 00000000 00000000 00000000 00000101 是 5的 原码。

    反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码。

    取反操作指:原为1,得0;原为0,得1。(1变0; 0变1)

    比如:将00000000 00000000 00000000 00000101每一位取反,得11111111 11111111 11111111 11111010。

    称:11111111 11111111 11111111 11111010 是 00000000 00000000 00000000 00000101 的反码。

    反码是相互的,所以也可称:

    11111111 11111111 11111111 11111010 和 00000000 00000000 00000000 00000101 互为反码。

    补码:反码加1称为补码。

    也就是说,要得到一个数的补码,先得到反码,然后将反码加上1,所得数称为补码。

    比如:00000000 00000000 00000000 00000101 的反码是:11111111 11111111 11111111 11111010。

    那么,补码为:

    11111111 11111111 11111111 11111010 + 1 = 11111111 11111111 11111111 11111011

    所以,-5 在计算机中表达为:11111111 11111111 11111111 11111011。转换为十六进制:0xFFFFFFFB。

    再举一例,我们来看整数-1在计算机中如何表示。

    假设这也是一个int类型,那么:  

    1、先取1的原码:00000000 00000000 00000000 00000001

    2、得反码: 11111111 11111111 11111111 11111110

    3、得补码: 11111111 11111111 11111111 11111111

    可见,-1在计算机里用二进制表达就是全1。16进制为:0xFFFFFFFF。

    上面这么多蛋疼的操作仅仅是因为:在计算机中,负数以其正值的补码形式表达。

    有的人可能会问:那为什么在计算机中,负数以其正值的补码形式表达?

    MMP,问的好,问的我焦虑症都犯了……焦虑症一犯我就想开车……先开个车吧轻松一下:

    网络图片

    为什么负数以其正值的补码形式表达:说到补码,就不得不引人另一个概念——模数。模数从屋里意义上讲是某种计量器的容量。这里我们经常举的一个例子就是钟表,其模数为12,即每到12就重新从0开始,数学上叫取模或求余(mod),java、C#和C++里用%表示求余操作。例如:
    14%12=2
    如果此时的正确时间为6点,而你的手表指向的是8点,如何把表调准呢?有两种方法:一把表逆时针拨两个小时;二是把表顺时针拨10个小时,即
    8-2=6
    (8+10)%12=6
    也就是说在此模数系统里面有
    8-2=8+10
    这是因为2跟10对模数12互为补数。因此有一下结论:在模数系统中,A-B或A+(-B)等价于A+[B补],即
    8-2/8+(-2)=8+10
    我们把10叫做-2在模12下的补码。这样用补码来表示负数就可以将加减法统一成加法来运算,简化了运算的复杂程度。
    采用补码进行运算有两个好处,一个就是刚才所说的统一加减法;二就是可以让符号位作为数值直接参加运算,而最后仍然可以得到正确的结果符号,符号位无需再单独处理。此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。

    到这里估计大家都能大概了解原码、补码和反码了,我们回到一开始的问题。

    data[1] = (byte)(deY & 0xFF);

    外部传进来一个参数func,这个参数有可能是负数的,例如传进来一个“-12”,“-12”二进制为:
    0000 1100 取反: 1111 0011 补码加1: 1111 0100
    byte –> int 就是由8位变 32 位 高24位全部补1: 1111 1111 1111 1111 1111 1111 1111 0100 ;
    0xFF的二进制表示就是:1111 1111,高24位补0:0000 0000 0000 0000 0000 0000 1111 1111;

    -12的补码与0xFF 进行与(&)操作 最后就是:0000 0000 0000 0000 0000 0000 1111 0100

    最终保持“-12”取反码,补码加1的一致性。

    byte类型的数字要&0xff再赋值给int类型,其本质原因就是想保持二进制补码的一致性。

    当byte要转化为int的时候,高的24位必然会补1,这样,其二进制补码其实已经不一致了,&0xff可以将高的24位置为0,低8位保持原样。这样做的目的就是为了保证二进制数据的一致性。

    如果您喜欢这篇文章,您也可以进行打赏, 金额不限.

    这里写图片描述

    展开全文
  • split()方法将指定字符串按某指定的分隔符进行拆分,拆分将会形成一个字符串的数组并返回如:string str = "aa.bb.cc.dd"; string[] strArray = str.Split('.');所得到的结果strArray的值为 string[]{"aa","bb",...
    split()方法是将指定字符串按某指定的分隔符进行拆分,拆分将会形成一个字符串的数组并返回

    如:string str = "aa.bb.cc.dd";
    string[] strArray = str.Split('.');

    所得到的结果strArray的值为 string[]{"aa","bb","cc","dd"}
    其中"aa","bb","cc","dd"即是构成数组strArray的元素

    数组中的每元素都各自对应一个索引值,就好比在数据库的表中每行数据纪录都拥有自己的索引ID一样

    数组元素的索引值是从0开始计数的,也就是说第一个元素的索引值是0,往后依次加1

    我们可以用数组的索引值来取对应位置的数组元素的值,比如说我们要取数组的第一个元素 “aa”,那么我们就可以这样写 :
    string aa = strArray[0];

    这里split('.')[1] 是一种缩写形式,把它拆开来看实际就是
    先用split('.')方法将字符串以"."开割形成一个字符串数组,然后再通过索引[1]取出所得数组中的第二个元素的值

    转载于:https://www.cnblogs.com/Seachal/p/7063883.html

    展开全文
  • 去中心化(Dapp)是什么意思

    千次阅读 2020-09-27 16:36:22
    DApp,英文全称DecentralizedApplication,翻译成中文就是我们通常所说的去中心化应用,DApp的应用就是我们长期接触并在手机上使用的各种应用,比如微信,微博,今日头条,淘宝等等,它们都App。和DApp一样,...

    谈到去中心化的应用,许多人的第一反应就是用“去中心化”这个词卡住了,而这四个字又是我们提到区块链时必须捆绑起来才能说话的另一个词。还不如将“去中心化”的应用拆开来解释,这样就能更好的理解。
    DApp,英文全称是DecentralizedApplication,翻译成中文就是我们通常所说的去中心化应用,DApp中的应用就是我们长期接触并在手机上使用的各种应用,比如微信,微博,今日头条,淘宝等等,它们都是App。和DApp一样,DApp的一些或者所有逻辑都存储在去中心化网络中,这一去中心化网络在区块链的世界被称为公共链。

    简言之,DApp之于公有链,也就是与iOS的等价关系,最大的区别在于,DApp是中心化的,而DApp是非中心的。
    中心化是什么?
    实际上,我们通常在手机上使用的各种App实际上都是中心化的,比如,微信是腾讯的,Facebook是Facebook公司的,淘宝是阿里巴巴的,我们在这些App上只是腾讯、Facebook这些企业的用户,这些企业要如何修改应用规则,我们是无权干涉的,甚至有时候还会泄露我们的隐私,我们也无法招架。
    去中心化是什么?
    与DApp不同的是,DApp是非中心化的,DApp的本质实际上是一个协议,一个用代码写死的规则,而这些代码是开放源码的,大家都可以看到,而且没有人可以随意修改,在DApp中,个人隐私的控制权也被交还给了用户,每个人都相当于DApp的主人。同样正因为如此,DApp越来越受到人们的重视。
    (外国网站StateoftheDApps截图)
    公共链是DApp依赖的。
    如前所述,DApp的运行是在公共链上运行的。一提起公有链,就不得不提以太坊(Ethereum),它也是最早落地DApp的公有链,据国外网站StateoftheDApps介绍,目前以太坊上已有1910个DApp,但以太坊作为拥有大量DApp的公有链,其自身却存在着DApp落地无法忽视的致命痛点,以致至今还未出现过一个杀手级应用。
    那就是以太坊的TPS(表示一秒钟可以处理的交易数量)太低了,到底有多低?如今以太坊每秒钟可处理的交易额一般在20笔左右,那么一天约可处理约1728000笔交易额,对比再看看以太坊的区块链浏览器就知道,最近以太坊每天要处理约60,000笔交易额,足以看到以太坊的网速还不足以完全支持其日常交易额。
    以太坊的网络一直是众所周知的堵点,相对于以太坊的网络来说,以太坊的游戏应用非常火爆,2017年年底以太坊的交易额只有2万多,而以太坊的网络已经非常拥挤,2万多人同时在网上交易可以卡成这样,这是什么概念?把《绝地求生》放到国内比较有名的吃鸡游戏《绝地求生》上,这相当于即使《绝地求生》的下载数量已突破1亿,也只有当不超过10万的玩家同时在线时,才能流畅的进行游戏,多达20,000人在线,这将导致你的网卡到落地成盒,更不用提任何游戏体验了。
    公共链,使DApp更好的落地。
    除以太坊之外,实际上还有许多公有链也相继发展起来,国内比较有名的就有波场,小蚂蚁等,但在DApp的开发和落地方面,波场已经走在了前列。
    当DApp的数量不断增加时,公有链的TPS(表示一秒钟可以处理的交易数)就变得特别重要。与以太坊相比,波场目前的网络规模接近2000TPS,是以太坊的100倍,而且仍在为处理数亿甚至数亿日交易量而努力。
    对于DApp开发而言,波场对这些开发者非常友好,波场设计了独特的虚拟内存机制,大大减少了物理内存容量,为开发者提供了近乎无限的内存空间,并且屏蔽了内存、CPU等底层概念,大大提高了易用性,这些都大大降低了DAPP开发的成本。
    就DApp生态而言,波场刚刚与DapDap生态平台DapDap,DapDap,DAppworld进行了合作,围绕开发者社区、在线和线下活动以及运营推广,全方位支持开发者落地优质Dapp内容,共同丰富波场生态。
    就DApp用户而言,波场已经拥有将近两百万全球社区用户,尤其是今年7月以1.4亿美元收购了拥有1.7亿用户的P2P下载网络BitTorrent,这对于整个区块链业来说是一个相当轰动的事件。总体来看,波场的用户数是世界上最多的。
    现在,Wave正在帮助全球的DApp开发者,为DApp的大规模落地而努力。将来,波场会彻底打破这些DApp之间的壁垒,实现资产重用、快速信任等,真正形成开放的DApp生态圈,以及所有人都期待的以DApp为入口的区块链世界。
    听了DApp这么多次了,还是不太明白,这大概是很多接触DApp的用户的心声吧。毕竟区块链业还处于相对初级的发展阶段,DApp又是今年才开始进入大众视野的,不了解DApp里面的原理其实很正常。但是,随着DApp的持续流行,那些知道DApp的人会成为最先赶上它红利的人吗?正如那些曾经见证手机端App崛起的人,这些人是否会真正见证另一个时代的开启?

    展开全文
  • 数组的每个元素都各自对应一个索引值 类似数据库的表每行数据纪录都拥有索引ID 数组元素的索引值从“0”开始计数,即第一个元素的索引值0,往后依次加1 例如:split(".")[0] 一种缩写形式,拆开来看实际...
  • 作为在生产环境广泛应用的产品,Docker 有着非常成熟的社区以及大量的使用者,代码库的内容也变得非常庞大。 同样,由于项目的发展、功能的拆分以及各种奇怪的改名 PR,让我们再次理解 Docker 的的...
  • 把这个词的中文拼音拆开,分别:我爱你,爱你!晚安的拼音wanan,拆开来每一个字母都代表一个字就是WoAiNi,AiNi——我爱你,爱你!如果你知道了这个秘密,那么请你:以后聊天后,不要忘了和他(她)说一声:晚安!...
  • 分部类型定义允许将类、结构或接口的定义拆分到多个文件。 public partial class Form1 : Form放在Form1.Designer.cs里 public partial class Form1 : Form放在Form1.cs里 这样Form1一个类就被定义在两个类文件...
  • 在程序开发,特别网站类开发,会接触到单点登录(SSO),什么是单点登录?,单点登录(SSO)有什么用?下面软币网小编来来介绍一下: 一、什么是单点登录? 单点登录的英文名叫做:Single Sign On(简称SSO)。 ...
  • 健壮是什么意思? 在本文的上下文中,健壮性是指在不立即返回给调用者的情况下管理流的异常条件的能力。 在某些处理方案, n个 m个回答足以做出结论。 通常具有这些趋势的示例处理场景是: 财务,保险和...
  • 这种调整到底是什么意思,路透社挑选了5个关键问题进行解读: 什么是控股公司? 所谓控股公司,就是一家公司持有另一家公司的股票。控股公司一般自己并不运营业务,只是用来控制不同的附属公司或者子公司。韩国政府...
  • Fragment是什么

    千次阅读 2018-06-07 08:50:17
    1.什么是Fragment?fragment它自己的中文意思:碎片;一个可以将activity拆分成几个完全独立封装的可重用的组件,每个组件有自己的生命周期和ui布局。2.用fragment能解决什么问题?说明:总的来说,Fragment和...
  • how(怎么做),接下来,本文将就这三个问题展开讨论和研究:2.1.1什么是数据切分"Shard" 这个词英文的意思是"碎片",而作为数据库相关的技术用语,似乎最早见于大型多人在线角色扮演游戏。"Sharding" 姑且称之为"分...
  • 【常见问题:】excel用"分列"拆分单元格内容为什么拆分不了Excel如何把同一列的内容拆分为两列Excel 的数据分列是什么意思EXCEL怎么将用逗号隔开的内容单独分成一列呢?excel怎样把一列数据拆分为三列Excel ...
  •  模组电源什么意思? 在计算机电源,主要用到非模组电源和模组电源2种类型,而模组电源又包含了全模组电源和半模组电源。 首先非模组电源和模组电源在内部结构与功能上完全一样的,都电脑电源,作用都为...
  • 坚固是什么意思? 在本文的上下文中,健壮性是指在不立即返回到调用者的情况下管理流的异常条件的能力。 在某些处理方案, n个 m个回答足以做出结论。 通常具有这些趋势的示例处理场景是: 财务,保险和...
  • 什么是分而治之?

    2021-01-01 18:16:00
    分而治之顾名思义就是分别治理的意思。软件工程如此,一个项目千头万绪,要一下完成很难,所以我们要把一个项目拆分成若干个需求,每一次只干其中的一件事,然后一件一件的完成后,一个项目就完成了。 ...
  • Fragment是什么,怎么用?

    千次阅读 2018-03-07 10:45:10
    1.什么是Fragment?fragment它自己的中文意思:碎片;一个可以将activity拆分成几个完全独立封装的可重用的组件,每个组件有自己的生命周期和ui布局。2.用fragment能解决什么问题?说明:总的来说,Fragment和...
  • 平时我们在学习语文的语法时经常会说到词根这个词,可是由于时间的关系很多人可能都不太记得词根到底是什么意思了,其实在淘宝标题也有词根的说法,大家知道淘宝标题词根是什么意思吗?  其实词根就是一个关键词...
  • WordPiece算法可以把这3个单词分为“lov”,“ed”,"#ing","#es"几部分,这些单词都有相同的部分"lov",这样可以把词的本身的意思和前缀、后缀分开,使得最终的词表变得精简。 为什么要这门做?因为按照传统方式...
  • 有些时候,我们在分解系统的时,往往会说xx子系统不应该理解yy这个概念,当我们这样说的时候,我们究竟想表达的是什么意思呢?为什么xx子系统不应该理解yy这个概念呢?还望哪位大神可以详细解惑一下。
  • 如果你问我,作为一名合格分析师的基本功最为重要的技能是什么?我会回答你说:第一是“会说话”,第二会“会拆分”。 “会说话”是分析师与人交流的基本功,不能交流就不能获得用户的真实需求,可以说,不会说话...
  • 原始网页直通车 调用时机 Attached 附加的意思,当 View 附加到 Window 的时候,就会回调...在 Android , Window 个抽象的概念, Android Window 的具体实现类 PhoneWindow , Activity 和 Dialog 的 Wind
  • "准确传达业务规则"意思是说:此时的软件就像领域专家编码人员时所开发出来的一样。 可以帮助业务人员自我提高。 确保软件知识并不只是掌握在少数人手。 在领域专家、开发者和软件本身之间不存在"翻译"。 设计...
  • ​ 从字面意思理解,它就是一个小的服务,为了解决某个问题或是完成一个具体功能而落地实现的某个服务应用,可以简单理解为IDEA里面的一个Moudle。 微服务架构: ​ 简单来说,它就是一种架构设计风格,本质就是...
  • PowerShell DSC的配置文件支持“分离”的格式,这是什么意思呢?好比说企业有一套合规性要求,这套要求无论是对开发测试环境还是生产环境都是一致的,但是显然开发测试与生产环境的规模大小以及硬件配置等等是不一样...
  • 之前,我都说了很多的关于微服务的概念,说到底,很多人看了之后会认为没有什么意思,因为没有实际的东西说明,即使每个概念都明白了,也很难赋之实践。所以这次,我来用一个实际的例子去说明,在实际的项目过程...

空空如也

空空如也

1 2 3 4 5 ... 11
收藏数 208
精华内容 83
关键字:

拆中是什么意思