Go语言小技巧
1 反射
val := reflect.ValueOf(v) kind := val.Kind() if kind == reflect.String { pValue := val.String() } else if kind == reflect.Int || kind == reflect.Int8 || kind == reflect.Int16 || kind == reflect.Int32 || kind == reflect.Int64 { pValueInt := val.Int() pValue := strconv.FormatInt(pValueInt, 10) } else if kind == reflect.Float32 || kind == reflect.Float64 { pValueFloat := val.Float() pValue := strconv.FormatFloat(pValueFloat, 'f', -1, 64) } else if kind == reflect.Slice { vSlice, ok := v.([]interface{}) if ok { } } else if kind == reflect.Map { vMap, ok := v.(map[string]interface{}) if ok { } }
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
java 语法糖之 -----------自动装箱、拆箱
一、 示例代码 @Test public void test3(){ int i=1; int j=i++; if( i==(++j)&&( i++) == j){ i+=j; } System.out.println("i'"+ i); } 结果如下: 5 结果为什么会是这样呢? 仔细看来 二、 自动装箱、拆箱 定义 自动装箱,在编译之后被转化成了对应的包装方法,Integer.valueOf(); Integer i =1 ; 在编译中被执行: Integer i= Integer.valueOf(int i) ; 拆箱 ,在编译之后被转化成了对应的还原方法, Integer.intValue()方法。 int j = i++; 在编译中执行 拆箱 , int j = Integer.inValue(i); 示例,调用了拆箱,java虚拟机中常量池包括有Integer型常量池,用一个表存储,具体信息如下: 存储的范围值默认是 -128~127, 故如果Interger指向的是这个范围内的数字在编译的时候会直接指向常量池中的对象; 三、 通过两种方法,比较地址是否相同...
- 下一篇
MessagePack Java 0.6.X 使用一个消息打包(message-packable)类
使用注解@Message来让你可以序列化你自己类中对象的public 字段。 本代码可以在https://github.com/cwiki-us-demo/messagepack-6-demo-java/blob/master/src/test/java/com/insight/demo/msgpack/MessagePack6Object.java中下载到本地后进行编译测试。 package com.insight.demo.msgpack; import org.junit.Test;import org.msgpack.MessagePack;import org.msgpack.annotation.Message;import org.slf4j.Logger;import org.slf4j.LoggerFactory; import java.util.UUID; import static org.junit.Assert.assertEquals; /** MessagePack6Objects* @author yhu*/ public class MessageP...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7