月沙開發者
請點擊"檢測語法"按鈕查看結果
請點擊"優化代碼"按鈕查看建議
本工具提供線上Rust代碼語法檢測與優化功能,幫助開發者提高Rust代碼質量和工作效率。
fn main() {
// 錯誤示例 - 括號不匹配
if true {
println!("條件成立");
// 錯誤示例 - 分號缺失
let number = 5
// 錯誤示例 - 類型錯誤
let text: String = 123; // 無法将整數轉換為字符串
// 錯誤示例 - 所有權錯誤
let s1 = String::from("hello");
let s2 = s1;
println!("{}", s1); // 錯誤:s1的所有權已移動到s2
// 錯誤示例 - 未閉合的字符串
let message = "這是一個未閉合的字符串;
// 錯誤示例 - 未定義的變量
println!("{}", undefined_variable);
}
// 優化前
fn before_optimization() {
let mut names = Vec::new();
names.push("Alice".to_string());
names.push("Bob".to_string());
names.push("Charlie".to_string());
let mut long_names = Vec::new();
for i in 0..names.len() {
if names[i].len() > 3 {
long_names.push(names[i].clone());
}
}
if !long_names.is_empty() {
for name in long_names {
println!("{}", name);
}
}
}
// 優化後
fn after_optimization() {
let names = vec!["Alice", "Bob", "Charlie"];
let long_names: Vec<&str> = names
.iter()
.filter(|n| n.len() > 3)
.cloned()
.collect();
if !long_names.is_empty() {
for name in long_names {
println!("{}", name);
}
}
// 更進一步的優化
names
.iter()
.filter(|n| n.len() > 3)
.for_each(|n| println!("{}", n));
}
通過使用本工具,您可以快速發現Rust代碼中的潛在問題,提高代碼質量和可維護性。
我們堅持為全球中文用戶提供準确、可靠的線上工具。
所有工具均遵循我們 “關於我們” 頁面中所述的審核原則進行開發與維護。請注意: 工具結果僅供參考,不構成任何專業建議。