拆分android中某个单词的每个字符?

时间:2012-07-15 13:32:02

标签: java android

我试图拆分一个单词的每个字符。例如 “CAT”= C,A,T

通过编辑文本中的输入,我已经能够获得完整的单词..

package com.pack.name;

import android.R.array;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class NamtestActivity extends Activity implements OnClickListener {
    /** Called when the activity is first created. */
    EditText name;
    Button save;
    String sname;
    int pname, i;
    char eachword[];

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        name = (EditText) findViewById(R.id.editText1);
        save = (Button) findViewById(R.id.button1);
        save.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub

        sname = name.getText().toString();
        pname = sname.length();
        Toast.makeText(getApplicationContext(), "" + pname, Toast.LENGTH_LONG)
                .show();
        //for (i = 0; i < pname; i++) {


        }

    }

}

这里我们从edittext中获取输入,然后单击按钮显示单词的长度...现在我需要分割单词..i试图在for循环中执行此操作... 请帮助.....

4 个答案:

答案 0 :(得分:4)

您可以简单地使用:

eachword = sname.toCharArray();

答案 1 :(得分:3)

  1. 您可以使用 BreakIterator类 getCharaterInstance()静态方法执行此操作。

    请参阅此链接以获取更多详细信息:

    http://docs.oracle.com/javase/6/docs/api/java/text/BreakIterator.html

  2. 您可以使用toCharArray()手动执行此操作。

    public void processSong(String word){

        //Conversion of String to Character Array//
    
        String s = word.toUpperCase();
        char[] tempArr = s.toCharArray();
        Character[] arr = new Character[tempArr.length];
    
    
    
    
        for (int i=0,j=0 ; i<tempArr.length ; i++,j++){
    
            arr[i] = tempArr[j];
        }
    
    
        for (Character c : l){
    
                 tempL.add(c);
    
    
    
        }
    
    
        Log.d("Vivek-Characters",tempL.toString());
        }
    

答案 2 :(得分:1)

您可以像这样迭代它们:

for (char c: sname.toCharArray()) {
    ...
}

或只是保存它们

char[] chars = sname.toCharArray();

答案 3 :(得分:0)

只需致电

"CAT".toCharArray();

你会得到结果

  

[C,A,T]