Có cách nào để chuyển đổi chuỗi ("abcdef"
) thành một chuỗi ký tự chứa ký tự (["a","b","c","d","e","f"]
) mà không sử dụng hàm String.Split
không?Chuyển chuỗi thành mảng mà không sử dụng chức năng Phân tách
Trả lời
Vì vậy, bạn muốn có một mảng của string
, một char
mỗi:
string s = "abcdef";
string[] a = s.Select(c => c.ToString()).ToArray();
này hoạt động vì string
thực hiện IEnumerable<char>
. Vì vậy, Select(c => c.ToString())
dự án mỗi char
trong các string
đến một string
đại diện cho rằng char
và ToArray
liệt kê phép chiếu và chuyển đổi kết quả thành mảng string
.
Nếu bạn đang sử dụng một phiên bản cũ của C#:
string s = "abcdef";
string[] a = new string[s.Length];
for(int i = 0; i < s.Length; i++) {
a[i] = s[i].ToString();
}
Có.
"abcdef".ToCharArray();
Anh ấy nói mảng 'chuỗi', không phải mảng' char'. Lưu ý rằng nếu bạn có thể 'String.Split' trên' char' trống giữa mỗi 'char' trong' string' thì kết quả sẽ là một 'string []'. Đây dường như là hành vi mà anh ta đang tìm kiếm. – jason
Tệ của tôi. Tôi đã tự do cố gắng để giải thích ngữ pháp không đúng của câu hỏi của mình, nhưng cách giải thích của tôi rõ ràng là sai. Cảm ơn đã chỉ ra điều đó. –
Bạn có thể sử dụng LINQ và làm:
string value = "abcdef";
string[] letters = value.Select(c => c.ToString()).ToArray();
Điều này sẽ giúp bạn có một mảng các chuỗi thay vì một loạt các ký tự .
Bit nhiều hơn số lượng lớn so với những điều trên nhưng tôi không thấy bất kỳ lớp lót đơn giản nào cho việc này.
List<string> results = new List<string>;
foreach(Char c in "abcdef".ToCharArray())
{
results.add(c.ToString());
}
results.ToArray(); <-- done
Có gì sai với string.split ???
Tại sao bạn không chỉ
string value="abcd";
value.ToCharArray();
textbox1.Text=Convert.toString(value[0]);
để hiển thị các chữ cái đầu tiên của chuỗi; đó sẽ là 'a' trong trường hợp này.
- 1. Chuyển đổi mảng Bash thành chuỗi được phân tách
- 2. Hive có chức năng tách chuỗi không?
- 3. Chuỗi phân tách Java thành mảng
- 4. chuỗi phân tách javascript thành mảng int
- 5. Chức năng tách chuỗi
- 6. Biến đổi Mảng Javascript thành chuỗi phân tách
- 7. Tách chuỗi thành mảng
- 8. Cách tách chuỗi thành mảng trong PostScript
- 9. C++: tách một chuỗi thành một mảng
- 10. Tách chuỗi thành mảng Shellscript
- 11. cách hiệu quả để chuyển đổi dấu phân cách tách chuỗi để NumPy mảng
- 12. Phân tích cú pháp mà không cần tách chuỗi
- 13. Phân tách (mô đun) bằng các ngôn ngữ chức năng
- 14. chuỗi nổi chuyển đổi - thập phân tách
- 15. Tách chuỗi thành mảng ký tự?
- 16. Chức năng PHP nào để sử dụng để đọc một tệp nhị phân thành một chuỗi?
- 17. Làm thế nào để tách một chuỗi được phân tách thành một mảng trong awk?
- 18. Làm cách nào để tách chuỗi thành các từ trong Java mà không sử dụng String.split()?
- 19. Chuyển đổi chuỗi nhị phân thành mảng byte
- 20. Sử dụng chức năng Chuyển qua chức năng khác nhau
- 21. Chuyển mảng byte thành chuỗi trong javascript
- 22. C++ chức năng ifstream và phân tách trường
- 23. C++ Tăng: Tách chức năng is_any_of()
- 24. Chuyển đổi chuỗi số khoảng trắng được phân tách thành chuỗi thành số nguyên và đặt chúng trong các biến
- 25. C# - IEnumerable để phân tách chuỗi
- 26. Chuyển chuỗi mảng thành mảng int
- 27. C++ chuyển đổi chức năng truyền tệp để sử dụng chuỗi
- 28. Cách chuyển một cột của bảng thành chuỗi csv trong SQL Server mà không cần sử dụng con trỏ
- 29. Làm cách nào để tách chuỗi thành nhiều mảng?
- 30. có thể chuyển đổi chuỗi thành mảng?
Trên thực tế, mặc dù cả hai ví dụ của bạn sẽ cung cấp cho bạn cùng một mảng chuỗi ở cuối, cách thứ hai ("cũ hơn") là nhanh hơn đáng kể. LINQ phải làm một số tiền hợp lý của bản dịch trên cao trước khi phá vỡ mã xuống đến những gì, về bản chất, bộ mã thứ hai. Thử kiểm tra thời gian; LINQ mất hơn hai lần miễn là ví dụ "dài". –
Tôi nghi ngờ rằng có điều gì đó sai trái với phương pháp định thời gian của bạn. – jason