تبدیل String به ArrayList و برعکس در آندروید
سوال : سلام چطور میتونم یک رشته رو تبدیل کنم به ارایه ؟ مثلا رشته من به اینصورت هست ali , mahmood, javad این رو میخوام به ArrayList تبدیل کنم . لطفا راهنمایی بفرماید ؟
پاسخ : به کمک دستور Arrays.asList میتوانید به راحتی String رو تبدیل به آرایه کنید . به مثال زیر توجه کنید :
private String[] name = {"ALi","Abbas","Hossein","Javad"}; private String pass= "123,321,5086,1012"; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //Convert String to ArrayList ArrayList<String> email = new ArrayList<String>(Arrays.asList(pass.split(","))); //Convert Array to ArrayList //ArrayList<String> email = new ArrayList<String>(Arrays.asList(name)); ArrayAdapter<String> adapter = new ArrayAdapter<String>(Main.this, android.R.layout.simple_list_item_1, email); ListView list = (ListView)findViewById(R.id.list); list.setAdapter(adapter); }
در مثال بالا ما String را تبدیل به ArrayList کرده ایم . حال در ادامه میخواهیم ArrayList را تبدیل به ارایه کنیم :
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ArrayList<String> name = new ArrayList<String>(); name.add("Ali"); name.add("mahmood"); name.add("javad"); ArrayList<String> pass = new ArrayList<String>(); pass.add("123"); pass.add("321"); pass.add("1012"); String[] string_name = new String[name.size()]; string_name = name.toArray( string_name ); String[] string_pass = new String[pass.size()]; string_pass = pass.toArray( string_pass ); CustomList adapter = new CustomList(Main.this, R.layout.custom_list, string_name, string_pass); ListView list = (ListView)findViewById(R.id.list); list.setAdapter(adapter); }