x+=4;
,等价于x=x+4;
.(一般的要把运算符放在=号左边,如*=,%=)如果运算符得到一个值,其类型与左侧操作数的类型不同,就会发生强制类型转换,例如:如果x是一个int,则以下语句
x+=3.5;
是合法的,将把x设置为(int)(x+3.5)
int n=12;
n++;
将n的值改为13,由于这些运算符会改变变量的值,所以他们的操作数不能是数值,例如:
4++
是不合法的.
n++
,还有一种是"前缀"形式++n
,"后缀"和"前缀"形式都会使变量值加一或减一,但用在表达式中时,二者就有区别,前缀形式会先完成加一,而后缀形式会使用变量原来的值.int m = 7;
int n = 7;
int a = 2 * ++m; // now a is 16,m is 8
int b = 2 * n++; // now b is 14,n is 8
建议不要在表达式中使用++,因为这样代码很容易使人困惑.
1==7
,返回值为false.另外可以使用!=检测不相等,例如:3!=7
,返回值为ture.<
(小于),>(大于),<=
(小于等于),>=
(大于等于)运算符.&&
表示逻辑"与",使用||
表示逻辑或,使用!
表示逻辑非,&&
和||
运算符是按照"短路"的方式来计算,如果第一个操作数已经能确定表达式的值,第二个操作数就不必计算了.例如:条件一 && 条件二
.如果条件一是false,那么结果不可能为true,因此第二个表达式不需要计算,可以利用这一点来避免错误.
条件1 || 条件2
,如果条件1正确,则整个表达式返回true.&
(and),|
(or),^
(xor),~
(not).int fourBitFrom = (n & 0b1000) / 0b1000;
.会返回1,否则会返回0.利用&并结合使用适当的2的幂,可以把其他位掩掉,而只报了其中的某一位.应用在布尔值上,&和|运算符也会得到一个布尔值,这些运算符与&&和||运算符很类似,不过&和|运算符不采用"短路"方式求值.
移位运算符的右操作数要完成模32的运算(除非左操作数是long类型,在这样的情况下需要对右操作数模64).例如:1<<35的值等同于1<<3,都为8.
enum Size { SMALL,MEDIUM,LARGE,EXTRA_LARGE};
Size s =Size.MEDIUM;
Stirng e = ""; //空串
Stirng greeting = "Hello";
String greeting = "Hello";
String s = greeting.substring(0,3); //"Hel"
String explotive="Hello";
String PGL3=" World";
String str=explotive+PGL3; //Hello World
int age=13;
String str = "age = " + age; //age = 13
String greeting = Hello
,如果希望将greeting的内容修改为‘Help!",不能直接将greeting的最后两个位置的字符修改为‘p‘和‘!‘,在Java中采用的方式是先提取再拼接的方式.greeting = greeting.substring(0,3)+"p!"; //Help!
s.equals(t);
,如果字符串s与t相等,则返回true,否则,返回false,注意:s与t可以是字符串变量,也可以是字符串字面量.例如:"Hello".equals(greeting);
"hello".equalsIgnoreCase("Hello");
.String greeting = "Hello";
System.out.println(greeting=="Hello");// true
String greeting_sub=greeting.substring(0,3);
System.out.println(greeting_sub=="Hel");// false
if(str.length()==0)
或者if(str.equals(""))
,空串是一个Java对象.有自己的串长度为0和内容空.不过,String变量还可以存放一个特殊的值,名为null,这表示目前没有任何对象与该变量关联.要检测一个字符串是否为null,使用如下代码:if(str==null)
,如果要检测一个字符串既不是空串也不是null串,即if( str != null && str.length() != 0 )
char charAt(int index)
:返回给定位置的代码单元.int codePointAt(int index)
:返回从给定位置的码点.
int offsetByCodePoints(int startIndex , int cPCount)
:返回从startIndex代码点开始,位移CpCount后的码点索引.int compartTo(String other)
:按照字典顺序,如果字符串位于other之前,返回一个负数,如果位于other后,返回一个整数,如果相等,返回0.IntStream codePoints()
:将这个字符串的码点作为一个流返回,调用toArray将他们放在一个数组中.boolean contains(CharSequence s)
:当且仅当此字符串包含指定的char值序列时才返回true.byte[] getBytes()
:使用平台的默认字符集将此String编码为字节序列,将结果存储到新的字节数组中.byte[] getBytes(String charsetName)
:使用命名的字符集将此 String编码为字节序列,将结果存储到新的字节数组中.int indexOf(int ch)
:返回指定字符第一次出现的字符串内的索引.boolean isEmpty()
:当且仅当length()为0,返回truechar[] toCharArray()
:将此字符串转换为新的字符数组.String toLowerCase()
:将所有字符转化为小写.String toUpperCase()
:将所有字符转化为大写.String valueOf(boolean b)
:返回boolean参数的字符串boolean形式.String valueOf(char c)
:返回char参数的字符串.String valueOf(char[] data,int offset,int count)
:返回char[]参数的字符串.String valueOf(double d)
:返回double参数的字符串.String valueOf(float f)
:返回float参数的字符串.String valueOf(int i)
:返回int参数的字符串.String valueOf(long l)
:返回long参数的字符串.String valueOf(Objet o)
:返回Object参数的字符串.原文:https://www.cnblogs.com/acknowledge/p/12910177.html