Ⅰ 关于java使用 trim 的小疑问!
首先,你需要要理解一下java中的引用和对象的关系。
String displayName = " 于小云";
上面的语句实际上在java的虚拟机中产生了两个对象:一个是“displayName”引用;另一个是" 于小云"字符串对象,displayName指向" 于小云"这个字符串对象在内存中的地址。
其次,String 的 trim()方法返回的是原字符串截去前后空串后的一个“新”的字符串对象,而不是原来的对象,也就是说他们在内存中的存储地址是不一样的。
然后,我们分析一下你的代码:
displayName = displayName.trim();
=赋值运算符的执行顺序是,先执行右边的表达式再赋值。
上面这条语句实际上在JVM中分两步执行:
1)displayName.trim();//产生一个去除前后空串的新字符串对象。
2)displayName指向新产生的对象。
所以,你代码中的这部分实验结果是正确的。
后两个实验犯的是同样的错误:
1.
String displayName1 = " 于小云";
if (displayName1 != null){
displayName1.trim();
//这里产生了一个新对象,但是displayName1并没有指向这个新产生的对象
//所以结果自然不正确。
}
2.
public String myTrim(String str) {
if (str != null) {
str.trim();
//这里跟第1个实验是一样的,str对没有指向新产生的对象
}
return str;//所以这里返回的还是原对象
}
String displayName2 = " 于小云";
displayName2 = myTrim(displayName2);
//从上面对myTrim()方法的分析可知道displayName2指向的还是原对象。
说了这么多希望你能理解!
Ⅱ java中的trim怎么用,是什么意思
trim()方法返回调用字符串对象的一个副本,但是所有起始和结尾的空格都被删除了,例子如下:String
s="
Hello
World
".trim();就是把"Hello
World"放入s中。
Ⅲ java字符串中去掉所有空白字符如何实现
//trim()是去除字符串开头的空格的
Strings="asdaasassq112309asdlsiasa8s9";
System.out.println(s.replaceAll("",""));
Ⅳ java中,String的trim().equalsIgnoreCase(),两个方法各有什么作用
String
trim()//截去字符串两端的空格,但对于中间的空格不处理。
java.lang.String.equalsIgnoreCase()
这个方法比较字符串到另一个字符串,忽略大小写的考虑
Ⅳ java中的string trim具体有什么用处。。。
就是把一个字符串中可能存在的首尾空格去掉。例如有一个字符串如下:
" 123456 abcefg "
那么经过trim()操作就变成了"123456 abcefg"
-------------------------------------------------------
有时候需要校验,判断某个字符串变量的值不能为空,这个“空”的意思不光是指null,还指empty(就是形如" "全空格的这种值),这时就可以用trim()方法把首尾空格去掉,然后再判断一下length就知道是不是empty了。
JS里面也有这个函数,功能是一样的。
Ⅵ java中trim()方法是用来干什么的
trim()方法可以将调用字符串对象的一个副本返回,同时删除所有起始和结尾的空格。
定义和用法
$.trim() 函数用于去除字符串两端的空白字符。
注意:$.trim()函数会移除字符串开始和末尾处的所有换行符,空格(包括连续的空格)和制表符。如果这些空白字符在字符串中间时,它们将被保留,不会被移除。
2.语法
$.trim( str )
3.例子
这个函数的功能就是去除一个字符串两边的空格。
Strng str = " abc " ;
String newStr = str.trim() ; //此时newStr = "abc" ;
Ⅶ java怎样去掉string中的空格,回车符
java中String有个trim()能够去掉一个字符串的前后空格。
但是trim()只能去掉字符串中前后的半角空格,而无法去掉全角空格。
去掉全角空格需要在trim()方法的基础上加上一些判断。
String textContent ="abctest";
textContent = textContent.trim();
while (textContent.startsWith("")) {//这里判断是不是全角空格
textContent = textContent.substring(1, textContent.length()).trim();
}
while (textContent.endsWith("")) {
textContent = textContent.substring(0, textContent.length() - 1).trim();
}
Ⅷ java 的trim方法
是不是user后面的空格太多了,导致看不到后面的pid?
Ⅸ java String去除两端的空格和空字符
java中String有个trim()能够去掉一个字符串的前后空格。
但是trim()只能去掉字符串中前后的半角空格,而无法去掉全角空格。
去掉全角空格需要在trim()方法的基础上加上一些判断。
String textContent ="abctest";
textContent = textContent.trim();
while (textContent.startsWith("")) {//这里判断是不是全角空格
textContent = textContent.substring(1, textContent.length()).trim();
}
while (textContent.endsWith("")) {
textContent = textContent.substring(0, textContent.length() - 1).trim();
}
Ⅹ java中trim()方法是用来干什么的
trim()的作用是去掉字符串两端的多余的空格,注意,是两端的空格,且无论两端的空格有多少个都会去掉,当然
中间的那些空格不会被去掉,如:
String s = " a s f g ";
String s1 = s.trim();
那么s1就是"a s f g",可见,这和上面所说的是一样的。
trim()不仅可以去掉空格,还能去掉其他一些多余的符号,这些符号分别是:
v f x0085 x00a0 ? u2028 u2029
翻译过来分别是:水平制表符,换行符,垂直制表符,换页符,回车,后面的这几个除了问号外,其他的都是转义符形式写法。
trim()函数移除字符串两侧的空白字符或其他预定义字符。
功能除去字符串开头和末尾的空格或其他字符。函数执行成功时返回删除了string字符串首部和尾部空格的字符串,发生错误时返回空字符串("")。如果任何参数的值为NULL,Trim() 函数返回NULL。