
Java字符串与运算符.ppt
18页单击此处编辑母版标题样式,,单击此处编辑母版文本样式,,第二级,,第三级,,第四级,,第五级,,*,,*,字符串和运算符,第七章,,本章主要目标,:,1.,了解,string,对象和设置其值的多种方法,2.,了解字符串串联和方法链,3.,熟悉,Java,语言的算术运算符,一、字符串,1.,在,Java,语言中,字符串是,String,类型的一级对象,包含可帮助您处理它们的方法两种创建方法:,,(,1,),String,a = new String(“abc”);(,不常用,),,(,2,),String a = “abc";,,注:我们以创建一个名为,a,且值为,abc,的,String,实例为例原因:因为,String,是一级对象,所以可以使用,new,实例化它们将一个,String,类型的变量设置为字符串字面常量具有相同的结果,因为,Java,语言会创建一个,String,对象来持有该字面常量,然后将该对象分配给该实例变量2.,字符串是字符序列,所以可以嵌入特殊字符如:,String s = "\t\n";,,,1.,串联字符串,1.,在,Java,中,字符串连接是一个非常常用的操作。
可以用加号(,+,)作为字符串连接的捷径如:,String abcd = "ab" + "cd";,,注:加号,(+),是,Java,语言中串联,String,的缩写,,+,符号既可以操作数值的加减,也可以用于连接字符串2.,字符串是不可改变性,,String,类是一个,final,类,这代表一个,String,对象是不可改变的,,String,类的方法中我们也找不到任何能够改变字符串的值和长度的方法2,、链式方法调用,调用链是一种经常用于不可变对象(比如,String,)的技术,在调用链中,修改一个不可变对象始终会返回修改的对象(但不会更改原始对象)然后处理返回的已更改的值如:告诉,Eclipse,代码生成,firstName,和,lastName,的,getter,和,setter,;然后删除,setName(),和,getName(),方法,添加一个新的,getFullName(),方法:,,,public String getFullName() {,,return getFirstName().concat(" ").concat(getLastName());,,},二、运算符,1.Java,语言使用两种类型的运算符:,,一元:仅需要一个操作数。
二元:需要两个操作数2.,常用的运算符,:,,a.,算术运算符,,b.,关系运算符,,c.,位运算符,,d.,逻辑运算符,,e.,赋值运算符,,f.,条件运算符,,1,、算术运算符,算术运算符用在数学表达式中,它们的作用和在数学中的作用一样下表列出了所有的算术运算符表格中的实例假设整数变量,A,的值为,10,,变量,B,的值为,20,:,,代码实现: 实现结果:,,public class Test {,,public static void main(String[] args) {,,int a = 10;,,int b = 20;,,int c = 25;,,int d = 25;,,System.out.println("a + b = " + (a + b) );,,System.out.println("a - b = " + (a - b) );,,System.out.println("a * b = " + (a * b) );,,System.out.println("b / a = " + (b / a) );,,System.out.println("b % a = " + (b % a) );,,System.out.println("a++ = " + (a++) );,,System.out.println("a-- = " + (a--) );,,},,},,,a + b = 30,,a - b = -10,,a * b = 200,,b / a = 2,,b % a = 0,,a++ = 10,,a-- = 11,2,、自增自减运算符及关系运算符,1.,自增(,++,)自减(,--,)运算符是一种特殊的算术运算符,在算术运算符中需要两个操作数来进行运算,而自增自减运算符是一个操作数。
2.,实例整数变量,A,的值为,10,,变量,B,的值为,20,:,,,代码实现: 实现结果:,,public class Test {,,public static void main(String[] args) {,,int a = 10;,,int b = 20;,,System.out.println("a == b = " + (a == b) );,,System.out.println("a != b = " + (a != b) );,,System.out.println("a > b = " + (a > b) );,,System.out.println("a < b = " + (a < b) );,,System.out.println("b >= a = " + (b >= a) );,,System.out.println("b <= a = " + (b <= a) );,,},,},a == b = false,,a != b = true,,a > b = false,3,、逻辑运算符、条件运算符,1.,逻辑运算符的基本运算,假设布尔变量,A,为真,变量,B,为假,,,,,,,2.,条件运算符也被称为三元运算符。
它的表现形式为:,? :,,如,:,public class Test {,,public static void main(String[] args){,,int a , b;,,a = 10; //,如果,a,等于,1,成立,则设置,b,为,20,,否则为,30,,b = (a == 1) ? 20 : 30;,,System.out.println( "Value of b is : " + b );//,如果,a,等于,10,成立,则设置,b,为,20,,否则为,30,,b = (a == 10) ? 20 : 30;,,System.out.println( "Value of b is : " + b );,,},,},,2,、赋值运算符,下面是,Java,语言支持的赋值运算符:,,代码实现: 实现结果:,,public class Test {,,public static void main(String[] args) {,,int a = 10;,,int b = 20;,,int c = 0;,,c = a + b;,,System.out.println("c = a + b = " + c );,,c += a ;,,},,},c = a + b = 30,2,、位运算符,1.Java,定义了位运算符,应用于整数类型,(int),,长整型,(long),,短整型,(short),,字符型,(char),,和字节型,(byte),等类型。
2.,位运算符作用在所有的位上,并且按位运算假设,a = 60,,,b = 13;,它们的二进制格式表示将如下:,,代码实现: 实现结果:,,public class Test {,,public static void main(String[] args) {,,int a = 60; /* 60 = 0011 1100 */,,int b = 13; /* 13 = 0000 1101 */,,int c = 0;,,c = a /* 12 = 0000 1100 */,,System.out.println("a ,,,,c = a | b; /* 61 = 0011 1101 */,,System.out.println("a | b = " + c );,,,,c = a ^ b; /* 49 = 0011 0001 */,,System.out.println("a ^ b = " + c );,a & b = 12,,a | b = 61,,a ^ b = 49,2,、其他运算符,其他运算符,,除了常用的运算符,我们还了解了其他一些在,Java,语言中称为运算符的符号,包括:,,a.,句点,(.),,它限定包的名称并调用方法。
b.,圆括号,(()),,它限定一个方法的逗号分隔的参数列表c.new,,(后跟一个构造方法名称时)它实例化一个对象2,、,Java,运算符优先级,THANK YOU,。
