type_name(expression)
創(chuàng)新互聯(lián)公司是網(wǎng)站建設(shè)專家,致力于互聯(lián)網(wǎng)品牌建設(shè)與網(wǎng)絡(luò)營銷,專業(yè)領(lǐng)域包括成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、電商網(wǎng)站制作開發(fā)、微信平臺(tái)小程序開發(fā)、微信營銷、系統(tǒng)平臺(tái)開發(fā),與其他網(wǎng)站設(shè)計(jì)及系統(tǒng)開發(fā)公司不同,我們的整合解決方案結(jié)合了恒基網(wǎng)絡(luò)品牌建設(shè)經(jīng)驗(yàn)和互聯(lián)網(wǎng)整合營銷的理念,并將策略和執(zhí)行緊密結(jié)合,且不斷評(píng)估并優(yōu)化我們的方案,為客戶提供全方位的互聯(lián)網(wǎng)品牌整合方案!
float跟int可以互轉(zhuǎn),但是會(huì)丟失所有精度。
func AppendBool(dst []byte, b bool) []byte
AppendBool 根據(jù) b 的值將“true”或“false”附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func AppendFloat(dst []byte, f float64, fmt byte, prec, bitSize int) []byte
AppendFloat 將由 FormatFloat 生成的浮點(diǎn)數(shù) f 的字符串形式附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func AppendInt(dst []byte, i int64, base int) []byte
AppendInt 將由 FormatInt 生成的整數(shù)i的字符串形式附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func AppendQuote(dst []byte, s string) []byte
AppendQuote 將由 Quote 生成的代表 s 的雙引號(hào) Go 字符串文字附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func AppendQuoteRune(dst []byte, r rune) []byte
AppendQuoteRune 將由 QuoteRune 生成的表示符文的單引號(hào) Go 字符文字附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func AppendQuoteRuneToASCII(dst []byte, r rune) []byte
AppendQuoteRuneToASCII 將由 QuoteRuneToASCII 生成的代表該符文的單引號(hào) Go 字符文字附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func AppendQuoteRuneToGraphic(dst []byte, r rune) []byte
AppendQuoteRuneToGraphic 將由 QuoteRuneToGraphic 生成的表示符文的單引號(hào) Go 字符文字附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func AppendQuoteToASCII(dst []byte, s string) []byte
AppendQuoteToASCII 將由 QuoteToASCII 生成的代表 s 的雙引號(hào) Go 字符串文字附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func AppendQuoteToGraphic(dst []byte, s string) []byte
AppendQuoteToGraphic 將由 QuoteToGraphic 生成的代表 s 的雙引號(hào) Go 字符串文字附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func AppendUint(dst []byte, i uint64, base int) []byte
AppendUint 將由 FormatUint 生成的無符號(hào)整數(shù) i 的字符串形式附加到 dst 并返回?cái)U(kuò)展緩沖區(qū)。
func Atoi(s string) (int, error)
Atoi 返回 ParseInt(s, 10, 0) 轉(zhuǎn)換為 int 類型的結(jié)果。
func CanBackquote(s string) bool
CanBackquote 報(bào)告字符串 s 是否可以不改變?yōu)閱涡蟹匆?hào)字符串,而不包含 tab 以外的控制字符。
func FormatBool(b bool) string
FormatBool 根據(jù) b 的值返回“true”或“false”
func FormatFloat(f float64, fmt byte, prec, bitSize int) string
FormatFloat 根據(jù)格式 fmt 和 precision prec 將浮點(diǎn)數(shù)f轉(zhuǎn)換為字符串。它將結(jié)果進(jìn)行四舍五入,假設(shè)原始數(shù)據(jù)是從 bitSize 位的浮點(diǎn)值獲得的(float32為32,float64為64)。
格式 fmt 是 'b'(-ddddp±ddd,二進(jìn)制指數(shù)),'e'(-d.dddde±dd,十進(jìn)制指數(shù)),'E'(-d.ddddE±dd,十進(jìn)制指數(shù)),'f'(-ddd.dddd,無指數(shù)),'g'('e'表示大指數(shù),'f'表示否則)或 'G'('E'表示大指數(shù),否則'f')。
precision prec 控制由 'e','E','f','g' 和 'G' 格式打印的位數(shù)(不包括指數(shù))。對(duì)于 'e','E' 和 'f',它是小數(shù)點(diǎn)后的位數(shù)。對(duì)于 'g' 和 'G' 這是總位數(shù)。特殊精度-1使用必需的最小位數(shù),以便 ParseFloat 完全返回 f 。
func FormatInt(i int64, base int) string
FormatInt 返回給定基數(shù)中的i的字符串表示,對(duì)于2 = base = 36.結(jié)果對(duì)于數(shù)字值 = 10使用小寫字母 'a' 到 'z' 。
func FormatUint(i uint64, base int) string
FormatUint 返回給定基數(shù)中的 i 的字符串表示,對(duì)于2 = base = 36.結(jié)果對(duì)于數(shù)字值 = 10使用小寫字母 'a' 到 'z' 。
func IsGraphic(r rune) bool
IsGraphic 報(bào)告符文是否被 Unicode 定義為 Graphic。這些字符包括類別 L,M,N,P,S 和 Z 中的字母,標(biāo)記,數(shù)字,標(biāo)點(diǎn),符號(hào)和空格。
func IsPrint(r rune) bool
IsPrint 報(bào)告該符文是否被 Go 定義為可打印,其定義與 unicode.IsPrint 相同:字母,數(shù)字,標(biāo)點(diǎn),符號(hào)和 ASCII 空格。
func Itoa(i int) string
Itoa 是 FormatInt(int64(i), 10) 的縮寫。
func ParseBool(str string) (bool, error)
ParseBool 返回字符串表示的布爾值。它接受1,t,T,TRUE,true,True,0,f,F(xiàn),F(xiàn)ALSE,false,F(xiàn)alse。任何其他值都會(huì)返回錯(cuò)誤。
func ParseFloat(s string, bitSize int) (float64, error)
ParseFloat 將字符串 s 轉(zhuǎn)換為浮點(diǎn)數(shù),精度由 bitSize:32指定,float32為64; float64為64。當(dāng) bitSize = 32時(shí),結(jié)果仍然具有 float64 類型,但可以在不更改其值的情況下將其轉(zhuǎn)換為 float32。
如果s格式良好且接近有效的浮點(diǎn)數(shù),則 ParseFloat 返回使用 IEEE754 無偏舍入舍入的最近浮點(diǎn)數(shù)。
ParseFloat 返回的錯(cuò)誤具有具體類型 * NumError 并包含 err.Num = s。
如果 s 在語法上不是格式良好的,ParseFloat 返回 err.Err = ErrSyntax。
如果 s 在語法上格式良好,但距離給定大小的最大浮點(diǎn)數(shù)大于1/2 ULP,則 ParseFloat 返回 f =±Inf,err.Err = ErrRange。
func ParseInt(s string, base int, bitSize int) (i int64, err error)
ParseInt 解釋給定基礎(chǔ)(2到36)中的字符串 s 并返回相應(yīng)的值 i。如果 base == 0,則基數(shù)由字符串的前綴隱含:base 16代表“0x”,base 8代表“0”,否則以10為底數(shù)。
bitSize 參數(shù)指定結(jié)果必須適合的整數(shù)類型。位大小 0,8,16,32 和 64 對(duì)應(yīng)于 int,int8,int16,int32 和 int64。
ParseInt 返回的錯(cuò)誤具有具體類型 * NumError 并包含err.Num = s。如果s為空或包含無效數(shù)字,則 err.Err = ErrSyntax,返回值為0; 如果與s對(duì)應(yīng)的值不能用給定大小的有符號(hào)整數(shù)表示,則 err.Err = ErrRange,返回的值是相應(yīng) bitSize 和符號(hào)的最大幅度整數(shù)。
func ParseUint(s string, base int, bitSize int) (uint64, error)
ParseUint 就像 ParseInt,但是對(duì)于無符號(hào)數(shù)字。
func Quote(s string) string
Quote 返回一個(gè)雙引號(hào)的 Go 字符串字面表示s。返回的字符串使用 Go 轉(zhuǎn)義序列 (\t, \n, \xFF, \u0100) 作為 IsPrint 定義的控制字符和非可打印字符。
func QuoteRune(r rune) string
QuoteRune 返回一個(gè)表示符文的單引號(hào) Go 字符。返回的字符串使用 Go 轉(zhuǎn)義序列(\t, \n, \xFF, \u0100) 作為 IsPrint 定義的控制字符和非可打印字符。
func QuoteRuneToASCII(r rune) string
QuoteRuneToASCII 返回表示符文的單引號(hào) Go 字符。對(duì)于非 ASCII 字符和 IsPrint 定義的非可打印字符,返回的字符串使用 Go 轉(zhuǎn)義序列 (\t, \n, \xFF, \u0100)。
func QuoteRuneToGraphic(r rune) string
QuoteRuneToGraphic 返回代表符文的單引號(hào) Go 字符。對(duì)于非 ASCII 字符和 IsGraphic 定義的非可打印字符,返回的字符串使用Go轉(zhuǎn)義序列 (\t, \n, \xFF, \u0100)。
func QuoteToASCII(s string) string
QuoteToASCII 返回一個(gè)代表 s 的雙引號(hào) Go 字符串。對(duì)于非 ASCII 字符和 IsPrint 定義的非可打印字符,返回的字符串使用 Go 轉(zhuǎn)義序列 (\t, \n, \xFF, \u0100) 。
func QuoteToGraphic(s string) string
QuoteToGraphic 返回一個(gè)代表 s 的雙引號(hào) Go 字符串。對(duì)于非 ASCII 字符和 IsGraphic 定義的非可打印字符,返回的字符串使用 Go 轉(zhuǎn)義序列 (\t, \n, \xFF, \u0100)。
func Unquote(s string) (string, error)
Unquote 將 s 解釋為單引號(hào),雙引號(hào)或反引號(hào)的 Go 字符串文字,返回引用的字符串值。(如果 s 是單引號(hào),它將是一個(gè) Go 字符字面量; Unquote 會(huì)返回相應(yīng)的一個(gè)字符字符串。)
Bit與Byte的區(qū)別
在工作中遇到一些概念模糊的地方, 需要記住了
bit意為“位”或“比特”,是計(jì)算機(jī)運(yùn)算的基礎(chǔ);
byte意為“字節(jié)”,是計(jì)算機(jī)文件大小的基本計(jì)算單位;
說到usb2.0標(biāo)準(zhǔn)接口傳輸速率。許多人都將“480mbps”誤解為480兆/秒。其實(shí),這是錯(cuò)誤的,事實(shí)上“480mbps”應(yīng)為“480兆比特/秒”或“480兆位/秒”,它等于“60兆字節(jié)/秒”,大家看到差距了吧。
這要從bit和byte說起:bit和byte同譯為"比特",都是數(shù)據(jù)量度單位,bit=“比特”或“位”。
byte=字節(jié)即1byte=8bits,兩者換算是1:8的關(guān)系。
mbps=mega bits per second(兆位/秒)是速率單位,所以正確的說法應(yīng)該是說usb2.0的傳輸速度是480兆位/秒,即480mbps。
mb=mega bytes(兆比、兆字節(jié))是量單位,1mb/s(兆字節(jié)/秒)=8mbps(兆位/秒)。
我們所說的硬盤容量是40gb、80gb、100gb,這里的b指是的byte也就是“字節(jié)”。
1 kb = 1024 bytes =2^10 bytes
1 mb = 1024 kb = 2^20 bytes
1 gb = 1024 mb = 2^30 bytes
比如以前所謂的56kb的modem換算過來56kbps除以8也就是7kbyte,所以真正從網(wǎng)上下載文件存在硬盤上的速度也就是每秒7kbyte,網(wǎng)卡,ADSL等都應(yīng)該以此來計(jì)算!
也就是說與傳輸速度有關(guān)的b一般指的是bit。
與容量有關(guān)的b一般指的是byte。
最后再說一點(diǎn): usb2.0 480mbps=60mb/s的傳輸速率還只是理論值,它還要受到系統(tǒng)環(huán)境的制約(cpu、硬盤和內(nèi)存等),其實(shí)際讀、取寫入硬盤的速度約在11~16mb/s。但這也比usb1.1的12mbps(1.5m/s)快了近10倍。
比如網(wǎng)速4080Kbps的真實(shí)速度換算是:(要注意Kbps還是KBps)
K=1000(或1024)
4080Kbps(小b)=4080000bps 也可以把4080Kbps(位)看成4080000個(gè)"位"或"比特"
那么4080000位等于多少字節(jié)呢,因8個(gè)位等于1個(gè)字節(jié),所以4080000/8=510000字節(jié)
那么51000字節(jié)等于多少KB呢,因1024個(gè)字節(jié)等于1KB,所以51000/1024=498.04KB(約等于500KB)
有時(shí)候看到 500K字節(jié)/秒其實(shí)也是500000字節(jié)/秒也可以說成是500K每秒..一個(gè)意思
Bit意為“位”或“比特”,是計(jì)算機(jī)運(yùn)算的基礎(chǔ);Byte意為“字節(jié)”,是計(jì)算機(jī)文件大小的基本計(jì)算單位
Bit 位
Byte (字節(jié))
1Byte=8Bits
1KB=1024Byte
1KB=1024Byte=8192Bits
1Byte(字節(jié))=8Bit(位)
1 kB = 1024 Byte (kB - kilobajt) 千
1 MB = 1024 kB (MB - megabajt) 兆
1 GB = 1024 MB (GB - gigabajt) 吉
1 TB = 1024 GB (TB - terabajt) 太
1 PB = 1024 TB (PB - petabajt) 拍
1 EB = 1024 PB (EB - eksabajt) 艾
1 ZB = 1024 EB (ZB - zettabajt) 皆
1 YB = 1024 ZB (YB - jottabajt) 佑
1 BB = 1024 JB (BB - brontobajt)
位(bit):一個(gè)數(shù)字0或者一個(gè)數(shù)字1,代表一位。
字節(jié)(Byte):每逢8位是一個(gè)字節(jié),這是數(shù)據(jù)存儲(chǔ)的最小單位。
1 Byte = 8 bit
100Mbps/8=12.5MB/S
有個(gè)簡單的方法BYTE* bData = ...;CreateBitmap(W, H, 1, 8, (void *)bData ); 或者CreateBitmap(W, H, 1, 16, (void *)bData );或者CreateBitmap(W, H, 1, 24, (void *)bData );看你用多少個(gè)字節(jié)保存一個(gè)像素的顏色值了 查看原帖
使用Integer#toHexString()方法,例子如下:
public static void main(String[] args) {
String str = "hoge-中";
byte[] arr = str.getBytes();
for (int i = 0; i arr.length; i++) {
System.out.println(Integer.toHexString(arr[i] 0xff));
}
}
public?static?bool[]?Conve(byte?[]?byt)
{
int?len?=?byt.Length;
bool?[]?newBit=new?bool[len*4];
int?MidByt;
for?(int?i?=?0;?i??len;?i++)
{
System.Windows.Forms.MessageBox.Show(System.Convert?.ToString(byt[i],2));
MidByt?=?byt[i];
for?(int?j?=?0;?j??4;?j++)
{
newBit[i?*?4?+?j]??=?System.Convert?.ToBoolean(MidByt?%?2);
MidByt?=?MidByt?/?2;
System.Windows.Forms.MessageBox.Show(System.Convert.ToString(MidByt,?2)?+?"?"?+?newBit[i?*?4?+?j].ToString());
}
}
foreach?(bool?a?in?newBit)
{
System.Windows.Forms.MessageBox.Show(a.ToString());
}
return?newBit;
}