您的位置:

java中的常用语句,java中!的用法

本文目录一览:

JAVA语句

String : 字符串类型

一、构造函数

String(byte[ ] bytes):通过byte数组构造字符串对象。

String(char[ ] value):通过char数组构造字符串对象。

String(Sting original):构造一个original的副本。即:拷贝一个original。

String(StringBuffer buffer):通过StringBuffer数组构造字符串对象。

例如:

byte[] b = {'a','b','c','d','e','f','g','h','i','j'};

char[] c = {'0','1','2','3','4','5','6','7','8','9'};

String sb = new String(b); //abcdefghij

String sb_sub = new String(b,3,2); //de

String sc = new String(c); //0123456789

String sc_sub = new String(c,3,2); //34

String sb_copy = new String(sb); //abcdefghij

System.out.println("sb:"+sb);

System.out.println("sb_sub:"+sb_sub);

System.out.println("sc:"+sc);

System.out.println("sc_sub:"+sc_sub);

System.out.println("sb_copy:"+sb_copy);

输出结果:sb:abcdefghij

sb_sub:de

sc:0123456789

sc_sub:34

sb_copy:abcdefghij

二、方法:

说明:①、所有方法均为public。

②、书写格式: [修饰符] 返回类型方法名([参数列表])

例如:static int parseInt(String s)

表示此方法(parseInt)为类方法(static),返回类型为(int),方法所需要为String类型。

1. char charAt(int index) :取字符串中的某一个字符,其中的参数index指的是字符串中序数。字符串的序数从0开始到length()-1 。

例如:String s = new String("abcdefghijklmnopqrstuvwxyz");

System.out.println("s.charAt(5): " + s.charAt(5) );

结果为: s.charAt(5): f

2. int compareTo(String anotherString) :当前String对象与anotherString比较。相等关系返回0;不相等时,从两个字符串第0个字符开始比较,返回第一个不相等的字符差,另一种情况,较长字符串的前面部分恰巧是较短的字符串,返回它们的长度差。

3. int compareTo(Object o) :如果o是String对象,和2的功能一样;否则抛出ClassCastException异常。

例如:String s1 = new String("abcdefghijklmn");

String s2 = new String("abcdefghij");

String s3 = new String("abcdefghijalmn");

System.out.println("s1.compareTo(s2): " + s1.compareTo(s2) ); //返回长度差

System.out.println("s1.compareTo(s3): " + s1.compareTo(s3) ); //返回'k'-'a'的差

结果为:s1.compareTo(s2): 4

s1.compareTo(s3): 10

4. String concat(String str) :将该String对象与str连接在一起。

5. boolean contentEquals(StringBuffer sb) :将该String对象与StringBuffer对象sb进行比较。

6. static String copyValueOf(char[] data) :

7. static String copyValueOf(char[] data, int offset, int count) :这两个方法将char数组转换成String,与其中一个构造函数类似。

8. boolean endsWith(String suffix) :该String对象是否以suffix结尾。

例如:String s1 = new String("abcdefghij");

String s2 = new String("ghij");

System.out.println("s1.endsWith(s2): " + s1.endsWith(s2) );

结果为:s1.endsWith(s2): true

9. boolean equals(Object anObject) :当anObject不为空并且与当前String对象一样,返回true;否则,返回false。

10. byte[] getBytes() :将该String对象转换成byte数组。

11. void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) :该方法将字符串拷贝到字符数组中。其中,srcBegin为拷贝的起始位置、srcEnd为拷贝的结束位置、字符串数值dst为目标字符数组、dstBegin为目标字符数组的拷贝起始位置。

例如:char[] s1 = {'I',' ','l','o','v','e',' ','h','e','r','!'};//s1=I love her!

String s2 = new String("you!"); s2.getChars(0,3,s1,7); //s1=I love you!

System.out.println( s1 );

结果为:I love you!

12. int hashCode() :返回当前字符的哈希表码。

13. int indexOf(int ch) :只找第一个匹配字符位置。

14. int indexOf(int ch, int fromIndex) :从fromIndex开始找第一个匹配字符位置。

15. int indexOf(String str) :只找第一个匹配字符串位置。

16. int indexOf(String str, int fromIndex) :从fromIndex开始找第一个匹配字符串位置。

例如:String s = new String("write once, run anywhere!");

String ss = new String("run");

System.out.println("s.indexOf('r'): " + s.indexOf('r') );

System.out.println("s.indexOf('r',2): " + s.indexOf('r',2) );

System.out.println("s.indexOf(ss): " + s.indexOf(ss) );

结果为:s.indexOf('r'): 1

s.indexOf('r',2): 12

s.indexOf(ss): 12

17. int lastIndexOf(int ch)

18. int lastIndexOf(int ch, int fromIndex)

19. int lastIndexOf(String str)

20. int lastIndexOf(String str, int fromIndex) 以上四个方法与13、14、15、16类似,不同的是:找最后一个匹配的内容。

public class CompareToDemo {

public static void main (String[] args) {

String s1 = new String("acbdebfg");

System.out.println(s1.lastIndexOf((int)'b',7));

}

}

运行结果:5

(其中fromIndex的参数为 7,是从字符串acbdebfg的最后一个字符g开始往前数的位数。既是从字符c开始匹配,寻找最后一个匹配b的位置。所以结果为 5)

21. int length() :返回当前字符串长度。

22. String replace(char oldChar, char newChar) :将字符号串中第一个oldChar替换成newChar。

23. boolean startsWith(String prefix) :该String对象是否以prefix开始。

24. boolean startsWith(String prefix, int toffset) :该String对象从toffset位置算起,是否以prefix开始。

例如:String s = new String("write once, run anywhere!");

String ss = new String("write");

String sss = new String("once");

System.out.println("s.startsWith(ss): " + s.startsWith(ss) );

System.out.println("s.startsWith(sss,6): " + s.startsWith(sss,6) );

结果为:s.startsWith(ss): true

s.startsWith(sss,6): true

25. String substring(int beginIndex) :取从beginIndex位置开始到结束的子字符串。

26.String substring(int beginIndex, int endIndex) :取从beginIndex位置开始到endIndex位置的子字符串。

27. char[ ] toCharArray() :将该String对象转换成char数组。

28. String toLowerCase() :将字符串转换成小写。

29. String toUpperCase() :将字符串转换成大写。

例如:String s = new String("java.lang.Class String");

System.out.println("s.toUpperCase(): " + s.toUpperCase() );

System.out.println("s.toLowerCase(): " + s.toLowerCase() );

结果为:s.toUpperCase(): JAVA.LANG.CLASS STRING

s.toLowerCase(): java.lang.class string

30. static String valueOf(boolean b)

31. static String valueOf(char c)

32. static String valueOf(char[] data)

33. static String valueOf(char[] data, int offset, int count)

34. static String valueOf(double d)

35. static String valueOf(float f)

36. static String valueOf(int i)

37. static String valueOf(long l)

38. static String valueOf(Object obj)

以上方法用于将各种不同类型转换成Java字符型。这些都是类方法。

Java中String类的常用方法:

public char charAt(int index)

返回字符串中第index个字符;

public int length()

返回字符串的长度;

public int indexOf(String str)

返回字符串中第一次出现str的位置;

public int indexOf(String str,int fromIndex)

返回字符串从fromIndex开始第一次出现str的位置;

public boolean equalsIgnoreCase(String another)

比较字符串与another是否一样(忽略大小写);

public String replace(char oldchar,char newChar)

在字符串中用newChar字符替换oldChar字符

public boolean startsWith(String prefix)

判断字符串是否以prefix字符串开头;

public boolean endsWith(String suffix)

判断一个字符串是否以suffix字符串结尾;

public String toUpperCase()

返回一个字符串为该字符串的大写形式;

public String toLowerCase()

返回一个字符串为该字符串的小写形式

public String substring(int beginIndex)

返回该字符串从beginIndex开始到结尾的子字符串;

public String substring(int beginIndex,int endIndex)

返回该字符串从beginIndex开始到endsIndex结尾的子字符串

public String trim()

返回该字符串去掉开头和结尾空格后的字符串

public String[] split(String regex)

将一个字符串按照指定的分隔符分隔,返回分隔后的字符串数组

实例:

public class SplitDemo{

public static void main (String[] args) {

String date = "2008/09/10";

String[ ] dateAfterSplit= new String[3];

dateAfterSplit=date.split("/"); //以“/”作为分隔符来分割date字符串,并把结果放入3个字符串中。

for(int i=0;idateAfterSplit.length;i++)

System.out.print(dateAfterSplit[i]+" ");

}

}

运行结果:2008 09 10 //结果为分割后的3个字符串

实例:

TestString1.java:

程序代码

public class TestString1

{

public static void main(String args[]) {

String s1 = "Hello World" ;

String s2 = "hello world" ;

System.out.println(s1.charAt(1)) ;

System.out.println(s2.length()) ;

System.out.println(s1.indexOf("World")) ;

System.out.println(s2.indexOf("World")) ;

System.out.println(s1.equals(s2)) ;

System.out.println(s1.equalsIgnoreCase(s2)) ;

String s = "我是J2EE程序员" ;

String sr = s.replace('我','你') ;

System.out.println(sr) ;

}

}

TestString2.java:

程序代码

public class TestString2

{

public static void main(String args[]) {

String s = "Welcome to Java World!" ;

String s2 = " magci " ;

System.out.println(s.startsWith("Welcome")) ;

System.out.println(s.endsWith("World")) ;

String sL = s.toLowerCase() ;

String sU = s.toUpperCase() ;

System.out.println(sL) ;

System.out.println(sU) ;

String subS = s.substring(11) ;

System.out.println(subS) ;

String s1NoSp = s2.trim() ;

System.out.println(s1NoSp) ;

}

}

=是赋值 比如 int a = 0; int b = 1; a = b; 那么把b的值赋值给a a为1

== 返回一个boolean值(真或者假)

如上面的 int a = 0; int b = 1; a==b(返回值为false假);

把b赋值给a a = b; 这时再 a==b(返回值就为true真).

JAVA有哪些实用的基本语法

. 表达式语句

int k, i=3, j=4;�

k=i+j;�

System.out.println(〃k=〃+k);

2. 复合语句

class Block {�

public static void main(String args〔〕) {�

int k, i=3, j=4;�

k=i+j;�

System.out.println(〃k=〃+k);�

{�

float f;�

f=j+4.5F;�

i++;�

System.out.println(〃f=〃+f);�

}�

System.out.println(〃i=〃+i);�

}�

}

选择语句

利用选择语句结构可以根据条件控制程序流程,改变程序执行的顺序。

if语句

if语句的语法格式为:

if (条件表达式)�

s1语句;

这是最简单的单分支结构。条件表达式的值为true,就执行s1语句,否则就忽略s1语句。s1语句可以是复合语句。

if…else语句

if语句通常与else语句配套使用,形成二分支结构。它的语法格式为:

if (条件表达式)�

s1语句;�

else�

s2语句;

当条件表达式的值为true,就执行s1语句,忽略else和s2语句;条件表达式的值为false,程序忽略s1语句,执行else后面的s2语句。s1和s2都可以是复合语句。

if…else复合结构

对于复杂的情况,可以嵌套使用if…else语句。它的语法格式为:

if (条件表达式1)�

s1语句;�

else if (条件表达式2)�

s2语句;�

else�

s3语句;

在这里依次计算条件表达式,如果某个条件表达式的值为true,就执行它后面的语句,其余部分被忽略;所有表达式的值都为false,就执行最后一个else后的s3语句。s1、s2和s3都可以是复合语句。

switch开关语句

虽然嵌套的条件语句可实现多个分支处理,但嵌套太多时容易出错和混乱,这时可以使用开关语句switch处理。实际上开关语句switch也是一种if…else结构,不过它使你在编程时很容易写出判断条件,特别是有很多条件选项的时候。

开关语句switch的语法格式:

switch (表达式) {�

case 常量1:�

语句1;�

break;

case 常量2:�

语句2;�

break;�

......�

default:�

语句n;�

}

其中switch、case、default是关键字,default子句可以省略。开关语句先计算表达式,然后将表达式值与各个常量比较,如果表达式值与某个常量相等,就执行该常量后面的语句;如果都不相等,就执行default下面的语句。如果无default子句,就什么都不执行,直接跳出开关语句。

使用开关语句时,注意以下几点:

? case后面的常量必须是整数或字符型,而且不能有相同的值;

? 通常在每一个case中都应使用break语句提供一个出口,使流程跳出开关语句。否则,在第一个满足条件case后面的所有语句都会被执行,这种情况叫做落空。

循环语句

循环可使程序根据一定的条件重复执行某一部分程序代码,直到满足终止循环条件为止。

Java中提供的循环语句有: 确定次数循环(for)、条件循环(while)、先执行后判定循环(do)。

for循环语句

如果希望程序的一部分内容按固定的次数重复执行,通常可以使用for循环。for循环采用一个计数器控制循环次数,每循环一次计数器就计数,直到完成给定的循环次数为止。

for循环的语法格式为:

for (表达式1; 表达式2; 表达式3)�

循环体

其中表达式1可以给出计数器的初值,是一个赋值语句;表达式2指出循环结束条件,是一个逻辑表达式;表达式3指出计数器每次的增量,是一个赋值语句。

注意: 计数器可在for语句之前定义,也可在循环括号中定义。计数器增量为1时常写成增量运算的形式,以加快运算速度。根据需要,增量可以大于或小于1。增量计算也可以放在循环体中进行,即把表达式3移到循环体内的适当位置,原位置为空。

使用循环语句时常常会遇到死循环的情况,也就是无限制地循环下去。所以在使用for循环时,要注意初值、终值和增量的搭配。终值大于初值时,增量应为正值,终值小于初值时,增量应为负值。编程时必须密切关注计数器的改变,这是实现正常循环避免陷入死循环的关键。

while循环语句

while循环不像for循环那么复杂,while循环只需要一个条件判断语句,便可以进行循环操作。

while循环的语法格式为:

while (条件表达式) �

循环体

其中while是关键字。每次循环之前都要计算条件表达式,其值为true时,就执行一次循环体中的语句,然后再计算条件表达式,决定是否再次执行循环体中的语句;如果条件表达式的值为false时,就跳出循环体,执行循环体下面的语句。

注意: while循环中的条件表达式是逻辑表达式,所以循环体中一定要有改变条件表达式值的语句,使条件表达式的值有机会变为false,否则会陷入死循环。

do…while循环语句

do…while循环与while循环相反,是先执行循环体中的语句,再计算while后面的条件表达式,若条件表达式值为false则跳出循环;否则继续下一轮循环。

有些情况下,不管条件表达式的值是为true还是false,都希望把指定的语句至少执行一次,那么就应使用do…while循环。

do…while循环的语法格式为:

do {�

循环体�

} while (条件表达式);

其中do、while是关键字。程序首先执行do下面的循环体,然后计算while后面条件表达式的值,如果其值为true,则重复执行循环体;否则,就结束循环。

与while循环相同,do循环在循环体中也一定要有改变条件表达式值为false的语句,否则会陷入死循环。do…while循环控制并不是很常用,但有时却非常重要,使用时特别注意不要忘记了while语句结尾处的分号“;”。

循环语句嵌套

ex:做个例子 是累计求和的。

public class Sum1 {�

public static void main(String args〔〕) {�

int n=10, sum=0;�

while (n0) {�

sum=0;�

for (int i=1; i=n; i++)�

sum+=i;�

System.out.println(〃前〃+n+〃个数的总和为: 〃+sum);�

n--;�

}�

}�

}

循环语句小结

一个循环一般应包括4部分内容。

(1) 初始化部分: 用来设置循环的一些初始条件,计数器清零等。

(2) 循环体部分: 这是反复被执行的一段代码,可以是单语句,也可以是复合语句。

(3) 迭代部分: 这是在当前循环结束,下一次循环开始时执行的语句,常用来使计数器加1或减1。

(4) 终止部分: 通常是一个布尔表达式,每一次循环要对该表达式求值,以验证是否满足循环终止条件。

跳转语句

跳转语句可以无条件改变程序的执行顺序。Java支持3种跳转语句: break、continue和return。

break语句

break语句提供了一种方便的跳出循环的方法。使用break语句可以立即终止循环,跳出循环体,即使循环没有结束也如此。

break语句的使用示例,输出结果如图3.10所示。

class B {�

public static void main(String args〔〕) {�

boolean test=true;�

int i=0;�

while (test) {�

i=i+2;�

System.out.println(〃i=〃+i);�

if (i=10)�

break;�

}�

System.out.println(〃 i为〃+i+〃时循环结束〃);�

}�

}

带标号的break语句

标号是标记程序位置的标识符。break语句只能跳转到循环语句下面的第一条语句上,而带标号的break语句可直接跳转到标号处。正常的break只退出一重循环,如果要退出多重循环,可以使用带标号的break语句。它的语法格式为:

标识符:�

…�

break 标识符;

做个例子说明

运行该工程,正常情况下可从键盘接受16个输入字符,但当输入b按回车时,break lab1语句就会结束二重循环。

class B1 {�

public static void main(String args〔〕) throws java.io.IOException {�

char ch;��

lab1: // 此处为标号标识符�

for (int i=0; i4; i++)�

for (int j=0; j4; j++) {�

ch=(char)System.in.read();�

System.in.skip(2);�

if (ch==′b′)�

break lab1;//跳到标号标识符处�

if (ch==′c′)�

System.out.println(〃继续〃);

}�

System.out.println(〃结束两重循环〃);�

}�

}

continue语句

continue语句只能用在循环结构中,它跳过循环体中尚未执行的语句,重新开始下一轮循环,从循环体第一个语句开始执行。

下面的可以输出1~9中除6以外所有偶数的平方值

class C2 {�

public static void main(String args〔〕) {�

for (int i=2;i=9;i+=2) {�

if (i==6)�

continue; �

System.out.println(i+〃 的平方 = 〃+i*i); }�

}�

}

带标号的continue语句

Java也支持带标号的continue语句,它通常用在嵌套循环的内循环中,可以用标号标出想跳到哪一条语句继续重复执行程序。其语法格式为:

标识符:�

…�

continue 标识符;

带标号的continue语句的使用

class C3{�

public static void main(String args〔〕) {�

lab1:�

for (int i=1; i=3; i++)�

for (int j=1; j=3; j++) {�

System.out.println(〃i:〃+i+〃 j:〃+j);�

if (i+j3) {�

System.out.println(〃Continue〃);�

continue lab1;�

}�

System.out.println(〃i=〃+i+〃 j=〃+j);�

}�

}�

}

求100~200间的所有素数。用嵌套的for循环做

public class Find {�

public static void main(String args〔〕) {�

System.out.println(〃 ** 100~200间的所有素数 **〃);�

int n=0;��

outer:�

for (int i=101; i200; i+=2) {�

int k=15;�

for (int j=2; j=k; j++)�

if (i%j==0)�

continue outer;�

System.out.print(〃 〃+i);�

n++;�

if (n10)�

continue;

System.out.println();�

n=0;�

}�

System.out.println();�

}�

}

return语句

return语句用于方法的返回上,当程序执行到return语句时,终止当前方法的执行,返回到调用这个方法的语句。return语句通常位于一个方法体的最后一行,有带参数和不带参数两种形式,带参数形式的return语句退出该方法并返回一个值。

当方法用void声明时,说明不需要返回值(即返回类型为空),应使用不带参数return语句。不带参数的return语句也可以省略,当程序执行到这个方法的最后一条语句时,遇到方法的结束标志}就自动返回到调用这个方法的程序中。

带参数的return语句格式为:

return 表达式;

当程序执行到这个语句时,首先计算“表达式”的值,然后将表达式的值返回到调用该方法的语句。返回值的数据类型必须与方法声明中的返回值类型一致,可以使用强制类型转换来使类型一致。

带参数的return语句的使用

class CircleArea {�

final static double PI=3.14159;�

public static void main(String args〔〕) {�

double r1=8.0, r2=5.0;�

System.out.println(〃半径为〃+r1+〃的圆面积=〃+area(r1));�

System.out.println(〃半径为〃+r2+〃的圆面积=〃+area(r2));�

}�

static double area(double r) {�

return (PI*r*r);�

}�

}

什么是java基本语句?

1、表达式语句

一些表达式除了计算表达式的值以外,还有“副作用”,这些表达式可以直接做语句(后面加分号)。

例如:a = 1; // Assignment

x *= 2; // Assignment with operation

i++; // Post-increment

--c; // Pre-decrement

System.out.println("statement"); // Method invocation

2、复合语句:用一对大括号括起来的一组语句(在Delphi里,是用begin/end对包含)

凡是可以出现语句的地方,都可以出现复合语句。

3、空语句:单个分号

4、带标号的语句:语句前面加上标识符(作为语句的标号)和冒号,break语句和continue语句可能会使用标号例如:rowLoop: for(int r = 0; r rows.length; r++) { // A labeled loop

colLoop: for(int c = 0; c columns.length; c++) { // Another one

break rowLoop; // Use a label}}5、局部变量声明语句 [final] type name [= value] [, name [= value]] ...;

局部变量(简称变量),是存储值的位置的符号名,定义在方法中或复合语句中;所有变量在使用前必须先声明---这就是变量声明语句;

Java是强类型语言,变量声明规定了变量的类型,只有该类型的值可以存储在该变量中;

注:Pascal、C#是强类型语言,C、C++不是

1)最简单形式:只规定变量类型和变量名;比如

int counter;

2)在变量声明中包含初始化,即:等号后面的表达式规定了变量的初始值;例如:int i = 0;String s = readLine( );

int[] data = {x+1, x+2, x+3}; // Array initializers

3)单个变量声明语句可以声明并且初始化多个变量,条件是这些变量必须有相同的类型;变量之间用逗号隔开。例如:

Java的常用输入输出语句?

常用的输入语句是:

输入字符串:new Scanner(System.in).next();

输入整数:new Scanner(System.in).nextInt();

输入小数:new Scanner(System.in).nextDouble();

常用的输出语句:

换行输出: System.out.println(变量或字符串);

非换行输出: System.out.print(变量或字符串);

换行输出错误提示(默认是红字):System.err.println(变量或字符串);

不换行输出错误提示(默认是红字): System.err.print(变量或字符串));