功能性动画是一种微妙的动画,有着明确、合理的目标。它能减少认知负荷,防止变化视盲,在空间上营造更好的印象。但还有一点,动画让用户界面鲜活起来。
通过组合与分割、改变形状和尺寸,运动可以使外表感觉鲜活。应当运用功能性的动画,流畅地在导航内容间引导用户,解释屏幕元素和排列的变化,并且强调元素层级。
成功的动效设计具有以下6个特征:
Go语言开发-字符串-格式化字符串和切片
3.5.5.格式化字符串和切片 字符串可以以给定的最小宽度(如果字符串太短,就以空格填充)输出,也可以以给定的最大宽度(如果字符串太长将被截断)输出。字符串可以以Unicode编码(即字符)、码点序列(即rune)或UTF-8字节码的形式输出。 [crayon-677de359860e6189048…
Go语言开发-字符串-格式化浮点数
3.5.4.格式化浮点数
对于浮点数,我们可以指定其整体宽度、小数点后的位数及是否使用标准计数法和科学计数法。
在这里我们使用了for …range循环来遍历float64类型切片中的数字。自定义的Humanize() 函数返回了一个以字符串表示包含分组分隔符(简单的三位数字一组)和填充符的数字。
Go语言开发-字符串-格式化字符
3.5.3.格式化字符
Go语言的字符都是rune类型(即int32),且它们可以以数字或Unicode字符的形式输出。
fmt.Printf(“%d %#04x %U ‘%c’\n”, 0x3A6, 934, ‘\u03A6’, ‘\U000003A6′)
934·0x03a6·U+03A6·’Φ’
Go语言开发-字符串-格式化整数
3.5.2.格式化整数
现在我们将介绍整数的格式化,从二进制(基数为2)的输出开始。
第一个格式(%b)使用了%b(二进制)格式化动作并使用尽可能少的数字将整数以二进制的形式输出。第二个格式(%9b)指定要输出的长度为9个字符(如有必要将超出此长度来避免截断),且默认右对齐。第三个格式(%-9b)使用“-”修饰符即输出设置为左对齐。第四个格式(%09b)使用0作为填充符,第五个格式(% 9b)使用空格作为填充符。
Go语言开发-字符串-格式化布尔值
3.5.1.格式化布尔值
使用格式化动作%t(truth value)来输出布尔值。
如果我们希望以整数的形式输出布尔值,我们必须将其转换:
我们可是使用strconv.ParseBool()函数将字符串转换会布尔值。当然,也有类似的函数可以a将字符串转换为数值。
Go语言开发-字符串-使用fmt包来格式化字符串
3.5.使用fmt包来格式化字符串 Go语言标准库中的fmt包提供了以字符串形式将数据输出到控制台、文件、其他满足io.Writer接口的值或其他字符串的打印函数,表3.3列出了这些函数。某些打印函数会返回一个错误值,当将数据打印到控制台时,通常我们会忽略该返回值,但在将数据打印到文件或网络中时,我们应始终检查该错误值。
Go语言开发-字符串-字符串索引与切片
3.4字符串的索引和切片
正如表3.2所示,Go语言支持字符串切片语法,它是Python切片语法的一个子集。该语法可以用于任意类型的切片,我们将在第4章使用到它。由于Go语言将字符串保存为UTF-8编码的字节,所以我们必须小心只在字符边界范围内进行切片。这在我们仅使用7位ASCII编码的情况下非常简单,因为一个字节表示一个字符,但是对于非ASCII编码的文本将更具挑战性,因为这些字符可能由一个或者多个字节表示。通常我们可以简单的使用for…range循环逐字符的遍历字符串,而不是将其切片
Go语言开发-字符串-字符和字符串
3.3.字符和字符串
在Go语言中,字符有两种不同的表示方式(可以很容易地互相转换)。单个字符可以用一个rune(或者int32)来表示。从现在开始,我们交替使用术语“字符”、“码点”、“Unicode字符”、“Unicode码点”来表示包含一个字符的rune(或者int32)。Go语言的字符串被表示成一个包含0个或多个字符且每个字符由一个或多个UTF-8编码的字节表示的序列。
程序员幽默-搞笑的代码注释
我们经常会看到一些关于程序员有趣的事或是在代码注释里看到程序员的幽默,例如以下11个。 0. // // 敬爱的维护者: // // 如果你在优化本例程函数时遇到麻烦,请自增下面的计数器 // 以提醒下一个维护者: // // total_hours_wasted_here = 16 // 1. /…
Go语言开发-字符串-比较字符串
3.2.比较字符串
如前所述,Go语言字符串支持常规的比较操作符(<、<=、==、!=、>、>=),参见表2.3。比较操作符在内存中是逐字节的比较字符串。比较操作可以直接使用,例如,比较两个字符串是否相等,也可以间接使用,例如,对已经排好序的[]string使用<操作符比较其含有的字符串。
Go语言开发-字符串-常量、操作符和转义
3.1.常量、操作符和转义
字符串常量使用双引号(”)或者反引号(’)来创建。双引号用于创建可解析的字符串常量,这些字符串支持表3.1列出的转义字符,但是不能跨行。反引号用于创建原生的字符串常量,这些字符串可以可以跨多个行;它们不支持任何转义序列且可以包含除了反引号之外的任何字符。可解析的字符串常量是最常使用的,但是使用原生的字符串常量来编写多行消息、HTML和正则表达式是非常有用的。
Go语言开发-字符串
3.字符串
本章将讲授Go语言的字符串类型和标准库中与字符串类型相关的关键包。本章各小节的内容将涵盖如何编写字符串常量及如何使用字符串操作符;如何对字符串进行索引和切片(取子串);如何格式化输出字符串、数值和其他内置类型及自定义类型。
Go语言开发-布尔与数值类型-实现一个HTTP服务器
2.4.2.实现一个基本的HTTP服务器
这个statistics程序仅有一个web页面,并运行在本机上,它的main()函数如下:
Http.HandleFunc() 函数接受两个参数:路径和当该路径被请求时要调用的函数的引用。该函数必须具有签名 func(http.ResponseWriter, * http. Request)。如果我们愿意,我们可以注册多个“路径-函数”对。这里我们只注册了路径/(即web程序的主页)和一个自定义的homePage() 函数。