对String字符串的处理


得到字符串的长度,可以通过maxLength进行一些限制;

username.setSelection(phoneUid.length());   


if (scanResult.indexOf("http//") != -1) {
Uri uri = Uri.parse(scanResult);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
}


Android开发中string.xml文件的使用

相关连接:http://mobile.51cto.com/aprogram-380358.htm,(还有字符串数字、颜色、尺寸、样式)

没有看明白你问的。首先 你在strings.xml文件里写上你要显示的内容:如: Hello World, MainActivity!
android系统后自动在R.java中生成一个引用
 public static final class string {
        public static final int hello=0x7f040000;
    }
这个不用程序员实现。
然后在你代码中需要使用时只需要调用R.string.hello即可.如textView.setText(R.string.hello)。
(不过,在我的编译版本6.0里面我测试了一下,一切正常,也没有问题)  如果需要修改的话,直接利用查询,统一进行替换就好了;

不对,这样输出的是字符串 hello 的id,是一串数字
笔误,应该是getString(R.string.hello)

context.getResources().getString(int id)或者getString(int id,Object ...obj) ——— 这才是大神的回答!

string和int互相转化

 int i = Integer.parseInt([String]); 

int i=12345;
String s=i+"";


tv.setText(String.valueOf(count));


pd.setMessage(getString(R.string.Is_the_registered)); 国际化,两套string
pd.setMessage(getResources().getString(R.string.Is_the_registered));


字符串的截取和切割

String spStr[] = str.split(",");   ——这样是得不到任何东西的;

split(String regex)           根据给定正则表达式的匹配拆分此字符串
而"."在正则表达式中属于预定义字符类  表示任何字符(与行结束符可能匹配也可能不匹配)
String [] str="java.java.java".split("\\."); ——需要转义一下!!
                for(String s :str){
                        System.out.println(s);
                }

String a="a796Fb28@";
String b=a.substring(0,5);
则b返回值为a796F。——规则:管前不管后!


android开发中怎么将手机号中间四位隐藏,直接用****替换掉中间4位数字

字符串替换就好,把中间的4位数替换成*,然后再显示。

String mobile = "12345671234";
String maskNumber = mobile.substring(0,3)+"****"+mobile.substring(7,mobile.length());


字符串的替换

邮箱的账号加密,采用什么逻辑呢?邮箱的正则式用哪个好呢?
email 邮箱指定字符串显示星号
String str = "[email protected]";
str.replaceAll(str.substring(4,str.lastIndexOf("@")),"****"));
但是这样从后往前检索的话要是 @ 之前的字符少于4位就有可能出错了。

var reg = /(.{2}).+(.{2}@.+)/g;
var str = "[email protected]";
console.log(str.replace(reg, "$1****$2"));


邮箱的账号加密

采用什么逻辑呢?邮箱的正则式用哪个好呢?
email 邮箱指定字符串显示星号
String str = "[email protected]";
   str.replaceAll(str.substring(4,str.lastIndexOf("@")),"****"));
但是这样从后往前检索的话要是 @ 之前的字符少于4位就有可能出错了。


var reg = /(.{2}).+(.{2}@.+)/g;
var str = "[email protected]";
console.log(str.replace(reg, "$1****$2"));


String 与 StringBuffer 用法区别

String类用来表示那些创建后就不会再改变的字符串,它是immutable的。而StringBuffer类用来表示内容可变的字符串,并提供了修改底层字符串的方法。 

--当我们进行字符拼接时,请使用StringBuffer类而非String类,因为前者将比后者快上百倍。 

的确,在程序的太多场合我们都会进行字符串拼接工作,简单的代码示例如下: 

String str="You are nice."; 
str+="I love you so much."; 


如果用StringBuffer类的话,代码如下: 

StringBuffer str= new StringBuffer("You are nice."); 
str.append("I love you so much."); 


 String类实现一种不能改变的静态字符串,StringBuffer类实现一种动态可以改变的字符串。StringBuffer类可以用于创建String类,StringBuffer一旦建立,可以用toString()方法将其转换为String类,以后,就可以使用String 类方法来操作。


CharSequence和String的区别是什么?

CharSequence是String实现的一个接口,
因为还有其他的CharSequence类型的类,比如StringBuffer和StringBuilder这两个很重要的类。
String对象是不可变的,这两个可变,所以我们在构造字符串的过程中往往要用到StringBuffer和StringBuilder。
http://zhidao.baidu.com/link?url=OJV0lyPwSvt5Z5zxz4oqz9hUyNqOv5JVnN_e4d-XHyfRNY6kXwcCzwoLo6zOlWQb5DwP6MN6TRvwQc1PS9vATa


Android 判断字符串是否相等  

判断两个String是否相等不能直接用== 或!=,需要用equals()判断,若相等,则返回1

判断TextView中文字是否相等:
TextView A,B;
if (A.getText().toString.equals(B.getText().toString())) {
    //A=B;
}else{
    //A!=B;
}

判断TextView是否为空
if( "".equals(A.getText().toString())){
    //空
}else{
    //非空
}

Java字符串比较大小

比如 B234 和B235怎么比较他们的大小?

int compareTo = s1.compareTo(s2);     直接比,是可以的

String的compareTo()方法返回值  http://blog.csdn.net/ysf871104/article/details/7779441   比较对应字符的大小(ASCII码顺序);

具体介绍: http://blog.csdn.net/c5153000/article/details/6213401     (顿时感觉真是:万能的java啊!!)


你可能感兴趣的:(琐碎知识点)