Ok, đây là lần đầu tiên tôi đăng bài ở đây, vì vậy hãy chịu đựng tôi.Trao đổi vị trí của các phần tử trong một mảng trong java?
Tôi có tên theo định dạng "Smith, Bob I"
và tôi cần chuyển chuỗi này để đọc "Bob I. Smith"
. Bất kỳ ý tưởng về làm thế nào để đi về việc này?
Đây là một cách mà tôi đã thử và trong khi thực hiện công việc, có vẻ khá cẩu thả.
public static void main(String[] args) {
String s = "Smith, Bob I.", r = "";
String[] names;
for(int i =0; i < s.length(); i++){
if(s.indexOf(',') != -1){
if(s.charAt(i) != ',')
r += s.charAt(i);
}
}
names = r.split(" ");
for(int i = 0; i < names.length; i++){
}
System.out.println(names[1] +" " + names[2] + " " + names[0]);
}
+1 cho nỗ lực – Venki
thuật toán của bạn có thể sẽ phụ thuộc một chút về những gì sắp xếp các quy tắc về đầu vào mà bạn có, vì điều này có thể yêu cầu các bước bổ sung để xử lý các trường hợp đặc biệt hoặc cho phép các phím tắt khác nhau vì các dữ liệu phù hợp. Ví dụ: luôn luôn có một món quà ban đầu ở giữa hoặc đôi khi sẽ không có tên đệm hoặc tên đệm đầy đủ. Còn các tựa game như II hay Jr thì sao? Tất cả các tên có đầu tiên và cuối cùng không? Vv: –
Được rồi, đây là công cụ thu thập tên khi chúng được đưa vào từ các văn bản không có cấu trúc hoặc chúng được thu thập bằng cách cào web. Chúng xuất hiện ở tất cả các loại định dạng, tức là "Bob I. Smith", "Smith, Bob I", "Bob Smith", "Smith Bob". Tôi cần phát triển một cách để làm cho tất cả các tên thành một định dạng được thống nhất, hiện tại, hoặc là 'Đầu tiên M. Cuối cùng' hoặc 'Cuối cùng, Đầu tiên M' – Lambda