- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
字符串{ 预期结构'st::s-6ren">
Rust和编程的新手。我正在尝试编写一个程序来计算用户输入的商品的州销售税。在一些帮助下,我想我快要走了,但是我有一个我不明白的错误:
4 fn read_one()->字符串{
预期结构'st::string::String',找到()
隐式返回'()',因为其主体没有尾部或'return'表达式
代码如下:
use::std::io;
use::std::collections::HashMap;
fn read_one() -> String {
let mut words = String::new();
io::stdin().read_line(&mut words)
.ok()
.expect("Failed to read line.");
}
fn main() {
let mut tax_rates = HashMap::new();
tax_rates.insert("AL".to_string(), 0.04);
tax_rates.insert("AK".to_string(), 0.00);
tax_rates.insert("AZ".to_string(), 0.056);
tax_rates.insert("AR".to_string(), 0.65);
tax_rates.insert("CA".to_string(), 0.725);
tax_rates.insert("CO".to_string(), 0.029);
tax_rates.insert("CT".to_string(), 0.635);
tax_rates.insert("DE".to_string(), 0.00);
tax_rates.insert("DC".to_string(), 0.06);
tax_rates.insert("FL".to_string(), 0.06);
tax_rates.insert("GA".to_string(), 0.04);
tax_rates.insert("HI".to_string(), 0.04);
tax_rates.insert("ID".to_string(), 0.06);
tax_rates.insert("IL".to_string(), 0.0625);
tax_rates.insert("IN".to_string(), 0.07);
tax_rates.insert("IA".to_string(), 0.06);
tax_rates.insert("KS".to_string(), 0.065);
tax_rates.insert("KY".to_string(), 0.06);
tax_rates.insert("LA".to_string(), 0.0445);
tax_rates.insert("ME".to_string(), 0.055);
tax_rates.insert("MD".to_string(), 0.06);
tax_rates.insert("MA".to_string(), 0.0625);
tax_rates.insert("MI".to_string(), 0.06);
tax_rates.insert("MN".to_string(), 0.06875);
tax_rates.insert("MS".to_string(), 0.07);
tax_rates.insert("MO".to_string(), 0.0425);
tax_rates.insert("MT".to_string(), 0.00);
tax_rates.insert("NE".to_string(), 0.055);
tax_rates.insert("NV".to_string(), 0.0685);
tax_rates.insert("NH".to_string(), 0.00);
tax_rates.insert("NJ".to_string(), 0.06625);
tax_rates.insert("NM".to_string(), 0.05125);
tax_rates.insert("NY".to_string(), 0.04);
tax_rates.insert("NC".to_string(), 0.0475);
tax_rates.insert("ND".to_string(), 0.05);
tax_rates.insert("OH".to_string(), 0.0575);
tax_rates.insert("OK".to_string(), 0.045);
tax_rates.insert("OR".to_string(), 0.00);
tax_rates.insert("PA".to_string(), 0.06);
tax_rates.insert("RI".to_string(), 0.07);
tax_rates.insert("PR".to_string(), 0.115);
tax_rates.insert("SC".to_string(), 0.06);
tax_rates.insert("SD".to_string(), 0.045);
tax_rates.insert("TN".to_string(), 0.07);
tax_rates.insert("TX".to_string(), 0.0625);
tax_rates.insert("UT".to_string(), 0.0485);
tax_rates.insert("VA".to_string(), 0.043);
tax_rates.insert("VT".to_string(), 0.06);
tax_rates.insert("WA".to_string(), 0.065);
tax_rates.insert("WV".to_string(), 0.06);
tax_rates.insert("WI".to_string(), 0.05);
tax_rates.insert("WY".to_string(), 0.04);
println!("In what state are you making your purchase?");
let state = read_one();
let state = state.trim().to_uppercase();
println!("How many items are you purchasing?");
let mut purchase_number = read_one();
let mut purchase_number = purchase_number.trim().parse::<i32>().unwrap();
match tax_rates.get(&state) {
Some(rate) => {
println!("The tax rate for {} is ({}).", state, rate);
}
None => {
println!("None.");
}
}
let mut tax_vec = Vec::new();
let mut cost_vec = Vec::new();
for item_number in 0..purchase_number {
println!("What is the cost of item number {}?", item_number);
let item_cost = read_one();
let item_cost = item_cost.trim().parse::<f64>().unwrap();
match tax_rates.get(&state) {
Some(rate) => {
let tax_amount = item_cost * rate;
let fin_cost = item_cost + tax_amount;
println!("The tax amount for item {} is: {:.2}",
item_number, tax_amount);
println!("The final cost of item number {} is: {:.2}",
item_number, fin_cost);
tax_vec.push(tax_amount);
cost_vec.push(fin_cost);
}
None => {
println!("None.");
}
}
}
println!("{:?}", tax_vec);
println!("{:?}", cost_vec);
}
最佳答案
要从函数返回值,您可以在rust中使用两个选项:
return <some value>;
表达式// returns the value '1' of type 'u8' without using a 'return'
fn return_one() -> u8 {
1
}
()
,也就是单位类型。
// This function returns the unit type '()',
// because it ends with a semicolon and has no return expressions.
fn print_to_console(message: &str) {
println!(message);
}
关于types - 如何修复 "implicitly returns '()' as its body has no tail or ' return'表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59507109/
我有一个日志文件,想要创建一个网页(可能是Python,但不是严格意义上),该网页的工作方式类似于Unix的“tail -f filename”命令的工作方式(将新的日志行写入文件时显示)。 这样,该
当我为日志文件运行 tail -f 时,logrotate 旋转它但 tail -f 没有停止。它继续在新文件中显示日志。之后我手动尝试; mv my.log my.log.2 touch my.lo
您将如何在 bash 中实现这一点。这是我在面试中被问到的一个问题,我可以想到高级语言的答案,而不是 shell。 据我了解,tail 的真正实现是查找文件末尾,然后向后读取。 最佳答案 主要思想是保
例如: NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"hello: (.*)ABC"
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 9 年前。 Improve this
为什么我不能tail tail 的结果?我可以调用head在序列 tail返回(和其他变体),但 tail在 tail不起作用(在 2017.10 中): > my $list = ; (a b c
A previous question如何讨论 Haskell 表达式的类型 ap zip tail可以翻译成\x -> zip x (tail x)的类型.这很有启发性,但是那里的问题和答案都没有涉
因为我试图保持容器运行,所以我在 docker compose 文件中将“tail -f/dev/null”指定为 command: version: '2' services: serviceN
以下是为拖尾“n”行文件编写的代码。 import java.io.RandomAccessFile; import java.util.HashMap; import java.util.Map
我有一个递归方案样式结构,我想获得所有子结构的列表,包括完整结构 - 即相当于 tails函数在 List 上执行.我认为可以通过调用 para 来实现这一点。 ,在每一步映射回原始结构,然后分别将原
编辑 这是一个 JSFiddle,其中注释掉了“tail”函数的代码。 Solar System JSFiddle 我有一个我正在研究的物体,它有一个围绕中心质量运行的物体。这非常有效。 我现在正尝试
我想跟踪一个文件,但 tail -f 始终从最后 10 行开始。有没有办法输出整个文件然后遵循? 我的目标是查找日志中出现的所有字符串,例如 tail -f Streaming_log | grep“
我试图在我的循环单向链表中将两端连接在一起。在文件名 file.txt 中,包含 ABCDEFGHIJKLMNOPQRSTUVWXYZ 作为文本,我能够分别打印出头部和尾部 A 和 Z。但是,我希望
我目前遇到命令问题 while sleep 0.3; do echo "1"; done | tail -n +3 | grep --line-buffered "1" 我想要一个看起来像这样的输出:
所以我想稍微了解一下 Linux 脚本,并从书中的一个简单示例开始。在这本书中,作者要我从 snort.conf 中获取“第 6 步:配置输出插件”之前的五行。 类似于作者,我确定了我想要的行的位置,
我想跟踪一个将不间断写入的日志文件,问题是在我的脚本中我不想指定行数或字节数等。要跟踪,我想在我的脚本中指定每次跟踪之前未跟踪的最后一行。我怎样才能在我的脚本中做到这一点?谢谢 最佳答案 我认为 20
Problem: Program to read the lines from infinite stream starting from its end of file. #解决方案: import
我想安装 Linux Tails。我已经将 ppa:tails-team/tails-installer 添加到我的源中,但是当我的 Ubuntu 软件中心尝试下载存储库信息时,我收到此错误: W:F
读取记录时间序列数据的 1 GB 文件并生成包含两列(一列时间,另一列数字)的实时图表的最佳方法是什么?我看到您有不同的方式来调整文件。 最佳答案 对于 RRDTool 来说听起来不错. 但如果您想坚
需要监视日志文件中的特定字符串“Server running at http”。在日志文件中找到该字符串后,我需要停止检查并想继续其余代码。 目前我正在使用 "tail -f my-file.log
我是一名优秀的程序员,十分优秀!